Imported Upstream version 2.0.3 62/195162/1 upstream/2.0.3
authorDongHun Kwak <dh0128.kwak@samsung.com>
Tue, 11 Dec 2018 07:08:53 +0000 (16:08 +0900)
committerDongHun Kwak <dh0128.kwak@samsung.com>
Tue, 11 Dec 2018 07:08:53 +0000 (16:08 +0900)
Change-Id: Ie5110690850548f32eb0b8cb10099f3fb7669688
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
16 files changed:
ChangeLog
INSTALL
Makefile.am
Makefile.in
NEWS
aclocal.m4
configure
configure.ac
install-sh
its/Makefile.in
itstool
itstool.1
itstool.in
missing
setup.py [new file with mode: 0644]
setup.py.in [new file with mode: 0644]

index e67d5dc7c6056fae63e73cedfe67183c2cce83a0..8548a430ed6479b458cd05e19998c0739fa16652 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+commit c12b29db71ec860ec9d15e2ef6e5bdf2a82355cd
+Merge: 204ed57 717ea02
+Author: Shaun McCance <shaunm@gnome.org>
+Date:   Tue Aug 15 10:51:44 2017 -0400
+
+    Merge pull request #14 from claudep/placeholder
+    
+    Get Placeholder out of Message
+
+commit 717ea021d34ed3840d3e41ce309731d414f9a71f
+Merge: 7ad3f40 204ed57
+Author: Shaun McCance <shaunm@gnome.org>
+Date:   Tue Aug 15 10:50:03 2017 -0400
+
+    Merge branch 'master' into placeholder
+
+commit 204ed57adecbbf958ee3a89b93c8279b0b18ce67
+Merge: 14f4286 89aff64
+Author: Shaun McCance <shaunm@gnome.org>
+Date:   Tue Aug 15 10:41:54 2017 -0400
+
+    Merge pull request #3 from hsoft/master
+    
+    Add python 3 support
+    
+    All tests pass with both py2 and py3
+
+commit 14f428652bc44d0f65cf21f17afaf1e0b13f0336
+Author: Shaun McCance <shaunm@redhat.com>
+Date:   Tue Aug 15 10:37:47 2017 -0400
+
+    Fix keep entities mode after libxml2 changes
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=762110
+
+ itstool.in | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 7ad3f407e131191bd51dac6d832479dff59ea839
+Author: Claude Paroz <claude@2xlibre.net>
+Date:   Mon May 1 12:41:30 2017 +0200
+
+    Get Placeholder out of Message
+
+ itstool.in | 15 ++++++++-------
+ 1 file changed, 8 insertions(+), 7 deletions(-)
+
+commit 676f3f738b21ec4d77f300f83d31d2d0eceaddcc
+Author: Shaun McCance <shaunm@redhat.com>
+Date:   Fri Sep 2 10:02:55 2016 -0400
+
+    Add -j command to Usage
+
+ itstool.in | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+commit 4232ae5c782230a90384636f6b61a97261000a2f
+Author: Shaun McCance <shaunm@redhat.com>
+Date:   Wed Aug 31 17:32:22 2016 -0400
+
+    Add --path option for extra paths for ITS files
+
+ itstool.in | 19 +++++++++++++++++--
+ 1 file changed, 17 insertions(+), 2 deletions(-)
+
+commit a5f19fe2bd851f44216840bb2d63581006967e6f
+Author: Shaun McCance <shaunm@redhat.com>
+Date:   Mon Mar 14 14:03:33 2016 -0400
+
+    Don't error out (except under -s) for mismatched placeholders
+
+ itstool.in | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+commit 89aff64b9e7fbfd74e586ef61c0804b646004e80
+Author: Virgil Dupras <hsoft@hardcoded.net>
+Date:   Sat Jan 16 16:05:54 2016 -0500
+
+    Fix problem with merging translations under py3
+    
+    This fixes three problems at once:
+    
+    1. When fiddling with credits nodes, we would get an error about libxml2
+    expecting `str` rather than `bytes`. We could fix this by encoding the
+    value only when uner py2.
+    
+    2. When writing the merged XML, our serlialized data would be `str`
+    under py3, which would cause implicit encoding problems when writing
+    that contents to the file.
+    
+    3. `fout` would not be closed after writing, which would sometimes cause
+    the target file to end up with no contents at all (at least on my
+    machine.
+
+ itstool.in | 17 +++++++++++++----
+ 1 file changed, 13 insertions(+), 4 deletions(-)
+
+commit c2e1824671747030234dab895400699cbc1d99be
+Author: Virgil Dupras <hsoft@hardcoded.net>
+Date:   Sun Mar 15 20:04:37 2015 -0400
+
+    Add python 3 support
+
+ itstool.in | 180 +++++++++++++++++++++++++++++++++++--------------------------
+ 1 file changed, 103 insertions(+), 77 deletions(-)
+
+commit 359be5c350fc3d869807f663cee2b028adf1f5d7
+Author: Shaun McCance <shaunm@gnome.org>
+Date:   Tue Jun 3 11:57:15 2014 -0500
+
+    Added secondary setup.py to make it easier to upload to pypi
+
+ .gitignore   |  4 ++++
+ Makefile.am  |  3 ++-
+ configure.ac |  1 +
+ setup.py.in  | 25 +++++++++++++++++++++++++
+ 4 files changed, 32 insertions(+), 1 deletion(-)
+
+commit d75f68cbc58075b57aee53d57b9156655a2fc99a
+Author: Shaun McCance <shaunm@gnome.org>
+Date:   Mon Mar 17 14:40:42 2014 -0400
+
+    Fix UTF-8 handling for translated attributes
+
+ itstool.in                   |  2 +-
+ tests/IT-attributes-2.ll.po  | 21 +++++++++++++++++++++
+ tests/IT-attributes-2.ll.xml | 10 ++++++++++
+ tests/IT-attributes-2.pot    | 21 +++++++++++++++++++++
+ tests/IT-attributes-2.xml    | 10 ++++++++++
+ tests/run_tests.py           |  3 +++
+ 6 files changed, 66 insertions(+), 1 deletion(-)
+
+commit 6f1761d86b4749a65607d4b4af622f6771e1f330
+Author: Shaun McCance <shaunm@gnome.org>
+Date:   Tue Dec 17 22:17:39 2013 -0500
+
+    Version 2.0.2
+
+ NEWS         | 6 ++++++
+ configure.ac | 2 +-
+ 2 files changed, 7 insertions(+), 1 deletion(-)
+
 commit 6596a9cd30e4c1ff8599caf724e2aed3dd6947bf
 Author: Shaun McCance <shaunm@gnome.org>
 Date:   Tue Dec 17 22:14:43 2013 -0500
 
     itstool.1: Update man page
 
- itstool.1.in |  137 ++++++++++++++++++++++++++++++++++++++--------------------
- itstool.in   |    2 +-
+ itstool.1.in | 137 +++++++++++++++++++++++++++++++++++++++--------------------
+ itstool.in   |   2 +-
  2 files changed, 91 insertions(+), 48 deletions(-)
 
 commit 1cce05f8c3d2b52f030b3e253d37ae5a6eee8003
@@ -19,9 +161,9 @@ Date:   Mon Dec 9 13:17:55 2013 -0500
     
     https://bugs.freedesktop.org/show_bug.cgi?id=72533
 
- configure.ac |    2 ++
- itstool.in   |    2 +-
- 2 files changed, 3 insertions(+), 1 deletions(-)
+ configure.ac | 2 ++
+ itstool.in   | 2 +-
+ 2 files changed, 3 insertions(+), 1 deletion(-)
 
 commit 46067ed60cbe1e5e3efe176da1f40f8219336490
 Author: Shaun McCance <shaunm@gnome.org>
@@ -32,8 +174,8 @@ Date:   Sun Nov 24 14:10:03 2013 -0500
     When the dropped node has no preceding sibling, itstool crashes
     because it tries to unlink prev node if it's blank.
 
- itstool.in |    4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
+ itstool.in | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
 commit 6d90f59ee2fcd9492501b337a15c65bfce78afcd
 Author: Shaun McCance <shaunm@gnome.org>
@@ -41,9 +183,9 @@ Date:   Mon Nov 18 11:21:10 2013 -0500
 
     Version 2.0.1
 
- NEWS         |    4 ++++
- configure.ac |    2 +-
- 2 files changed, 5 insertions(+), 1 deletions(-)
+ NEWS         | 4 ++++
+ configure.ac | 2 +-
+ 2 files changed, 5 insertions(+), 1 deletion(-)
 
 commit b317a7c7362938098379f2f8db42f0f94d6f98dd
 Author: Shaun McCance <shaunm@gnome.org>
@@ -51,11 +193,11 @@ Date:   Mon Nov 4 16:32:34 2013 -0500
 
     its: Consolidate ITS rules for better performance
 
- its/docbook.its  |  313 +++++++++++++++++++++++++++---------------------------
- its/docbook5.its |  310 ++++++++++++++++++++++++++---------------------------
- its/its.its      |    3 +-
- its/mallard.its  |   25 ++---
- its/xhtml.its    |   67 ++++++------
+ its/docbook.its  | 313 +++++++++++++++++++++++++++----------------------------
+ its/docbook5.its | 310 +++++++++++++++++++++++++++---------------------------
+ its/its.its      |   3 +-
+ its/mallard.its  |  25 +++--
+ its/xhtml.its    |  67 ++++++------
  5 files changed, 355 insertions(+), 363 deletions(-)
 
 commit 3788e65a1fee2b141318b7bffc58d9dce8339d1a
@@ -64,8 +206,8 @@ Date:   Fri Nov 1 13:48:41 2013 -0400
 
     NEWS: Fixed typo
 
- NEWS |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
+ NEWS | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit dd44edfb9486e4506accb520874d4e62422e1419
 Author: Shaun McCance <shaunm@gnome.org>
@@ -73,9 +215,9 @@ Date:   Fri Nov 1 13:43:35 2013 -0400
 
     Version 2.0.0
 
- NEWS         |   19 +++++++++++++++++++
- configure.ac |    2 +-
- 2 files changed, 20 insertions(+), 1 deletions(-)
+ NEWS         | 19 +++++++++++++++++++
+ configure.ac |  2 +-
+ 2 files changed, 20 insertions(+), 1 deletion(-)
 
 commit 17a89300affeac556803c23eefefc9f279a82908
 Author: Shaun McCance <shaunm@gnome.org>
@@ -88,9 +230,9 @@ Date:   Fri Nov 1 11:53:28 2013 -0400
     text run hits some strange corner cases that cause locale filter
     not to be applied as you might think it should.
 
- its/docbook.its  |    3 +++
- its/docbook5.its |    3 +++
- 2 files changed, 6 insertions(+), 0 deletions(-)
+ its/docbook.its  | 3 +++
+ its/docbook5.its | 3 +++
+ 2 files changed, 6 insertions(+)
 
 commit 8e4ccd41ad198ebc816a43419c21714bad7dc748
 Author: Shaun McCance <shaunm@gnome.org>
@@ -98,9 +240,9 @@ Date:   Fri Nov 1 10:46:21 2013 -0400
 
     its: Exclude editor remarks/comments with locale filter
 
- its/docbook.its  |    4 ++--
- its/docbook5.its |    4 ++--
- its/mallard.its  |    3 ++-
+ its/docbook.its  | 4 ++--
+ its/docbook5.its | 4 ++--
+ its/mallard.its  | 3 ++-
  3 files changed, 6 insertions(+), 5 deletions(-)
 
 commit 770a84a13e30f5e5d8218ae495b430d0c3002f56
@@ -109,8 +251,8 @@ Date:   Fri Nov 1 10:14:42 2013 -0400
 
     itstool.in: Allow users to set ITS params
 
- its/its.its |    1 +
- itstool.in  |   62 ++++++++++++++++++++++++++++++++++++----------------------
+ its/its.its |  1 +
+ itstool.in  | 62 +++++++++++++++++++++++++++++++++++++------------------------
  2 files changed, 39 insertions(+), 24 deletions(-)
 
 commit 6ec6088089430eb5e1cd5a2aa82eef3161b11487
@@ -119,10 +261,10 @@ Date:   Thu Oct 31 14:16:54 2013 -0400
 
     its: Switched built-in ITS rules to 2.0
 
- its/its.its     |    2 +-
- its/mallard.its |    2 +-
- its/ttml.its    |    2 +-
- its/xhtml.its   |    2 +-
+ its/its.its     | 2 +-
+ its/mallard.its | 2 +-
+ its/ttml.its    | 2 +-
+ its/xhtml.its   | 2 +-
  4 files changed, 4 insertions(+), 4 deletions(-)
 
 commit 7486a069a39b97d84fb76ff85286b40f4c8e5af0
@@ -133,9 +275,9 @@ Date:   Thu Oct 31 14:16:31 2013 -0400
     
     Also minor fixed to DocBook 4 I ran across
 
- its/Makefile.am  |    2 +-
- its/docbook.its  |    7 ++-
- its/docbook5.its |  201 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ its/Makefile.am  |   2 +-
+ its/docbook.its  |   +-
+ its/docbook5.its | 201 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
  3 files changed, 207 insertions(+), 3 deletions(-)
 
 commit 844bf80669ffe05ad13c5ce540f4c32d6ed0bb31
@@ -144,8 +286,8 @@ Date:   Thu Oct 31 09:59:11 2013 -0400
 
     docbook.its: Updated preserve space and external resource
 
- its/docbook.its |   19 +++++++++----------
- 1 files changed, 9 insertions(+), 10 deletions(-)
+ its/docbook.its | 19 +++++++++----------
+ 1 file changed, 9 insertions(+), 10 deletions(-)
 
 commit 95d331264b29d4ad13cd661d2d3d84e2ef09e7ab
 Author: Shaun McCance <shaunm@gnome.org>
@@ -153,8 +295,8 @@ Date:   Thu Oct 31 09:54:44 2013 -0400
 
     mallard.its: Updated preserve space and external resource
 
- its/mallard.its |    6 +++---
- 1 files changed, 3 insertions(+), 3 deletions(-)
+ its/mallard.its | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
 
 commit 4af2d64a7987ef2dc4121afc1bb6ebf8077230b3
 Author: Shaun McCance <shaunm@gnome.org>
@@ -162,8 +304,8 @@ Date:   Thu Oct 31 09:49:54 2013 -0400
 
     xhtml.its: Updated preserve space and external resource
 
- its/xhtml.its |    5 ++++-
- 1 files changed, 4 insertions(+), 1 deletions(-)
+ its/xhtml.its | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
 
 commit d657543826789e263ac9c8861a722f2527b5b0a3
 Merge: e338a3e 2928d6f
@@ -178,38 +320,38 @@ Date:   Mon Oct 28 11:06:00 2013 -0400
 
     Support localeFilterType="exclude"
 
- itstool.in                               |   64 ++++++++++++++++++++++-------
- tests/ITS-2.0-Testsuite/run_tests.sh     |   18 ++------
- tests/LocaleFilter/Locale1Xml.fr_CA.po   |    4 +-
- tests/LocaleFilter/Locale1Xml.fr_CH.po   |    4 +-
- tests/LocaleFilter/Locale1Xml.fr_FR.po   |    4 +-
- tests/LocaleFilter/Locale1Xml.pot        |    4 +-
- tests/LocaleFilter/Locale2Xml.fr_CA.po   |    4 +-
- tests/LocaleFilter/Locale2Xml.fr_CH.po   |    4 +-
- tests/LocaleFilter/Locale2Xml.fr_FR.po   |    4 +-
- tests/LocaleFilter/Locale2Xml.pot        |    4 +-
- tests/LocaleFilter/Locale3Xml.fr_CA.po   |    4 +-
- tests/LocaleFilter/Locale3Xml.fr_CH.po   |    4 +-
- tests/LocaleFilter/Locale3Xml.fr_FR.po   |    4 +-
- tests/LocaleFilter/Locale3Xml.pot        |    4 +-
- tests/LocaleFilter/Locale4Xml.fr_CA.po   |    4 +-
- tests/LocaleFilter/Locale4Xml.fr_CH.po   |    4 +-
- tests/LocaleFilter/Locale4Xml.fr_FR.po   |    4 +-
- tests/LocaleFilter/Locale4Xml.pot        |    4 +-
- tests/LocaleFilter/Locale5Xml.fr_CA.po   |    4 +-
- tests/LocaleFilter/Locale5Xml.fr_CH.po   |    4 +-
- tests/LocaleFilter/Locale5Xml.fr_FR.po   |    4 +-
- tests/LocaleFilter/Locale5Xml.pot        |    4 +-
- tests/LocaleFilter/Locale6Xml.fr_CA.po   |   22 ++++++++++
- tests/LocaleFilter/Locale6Xml.fr_CA.xml  |   13 ++++++
- tests/LocaleFilter/Locale6Xml.fr_CH.po   |   23 +++++++++++
- tests/LocaleFilter/Locale6Xml.fr_CH.xml  |   13 ++++++
- tests/LocaleFilter/Locale6Xml.fr_FR.po   |   22 ++++++++++
- tests/LocaleFilter/Locale6Xml.fr_FR.xml  |   13 ++++++
- tests/LocaleFilter/Locale6Xml.joined.xml |   22 ++++++++++
- tests/LocaleFilter/Locale6Xml.pot        |   23 +++++++++++
- tests/LocaleFilter/Locale6Xml.xml        |   20 +++++++++
- tests/run_tests.py                       |   16 +++++++
+ itstool.in                               | 64 ++++++++++++++++++++++++--------
+ tests/ITS-2.0-Testsuite/run_tests.sh     | 18 ++-------
+ tests/LocaleFilter/Locale1Xml.fr_CA.po   |  4 +-
+ tests/LocaleFilter/Locale1Xml.fr_CH.po   |  4 +-
+ tests/LocaleFilter/Locale1Xml.fr_FR.po   |  4 +-
+ tests/LocaleFilter/Locale1Xml.pot        |  4 +-
+ tests/LocaleFilter/Locale2Xml.fr_CA.po   |  4 +-
+ tests/LocaleFilter/Locale2Xml.fr_CH.po   |  4 +-
+ tests/LocaleFilter/Locale2Xml.fr_FR.po   |  4 +-
+ tests/LocaleFilter/Locale2Xml.pot        |  4 +-
+ tests/LocaleFilter/Locale3Xml.fr_CA.po   |  4 +-
+ tests/LocaleFilter/Locale3Xml.fr_CH.po   |  4 +-
+ tests/LocaleFilter/Locale3Xml.fr_FR.po   |  4 +-
+ tests/LocaleFilter/Locale3Xml.pot        |  4 +-
+ tests/LocaleFilter/Locale4Xml.fr_CA.po   |  4 +-
+ tests/LocaleFilter/Locale4Xml.fr_CH.po   |  4 +-
+ tests/LocaleFilter/Locale4Xml.fr_FR.po   |  4 +-
+ tests/LocaleFilter/Locale4Xml.pot        |  4 +-
+ tests/LocaleFilter/Locale5Xml.fr_CA.po   |  4 +-
+ tests/LocaleFilter/Locale5Xml.fr_CH.po   |  4 +-
+ tests/LocaleFilter/Locale5Xml.fr_FR.po   |  4 +-
+ tests/LocaleFilter/Locale5Xml.pot        |  4 +-
+ tests/LocaleFilter/Locale6Xml.fr_CA.po   | 22 +++++++++++
+ tests/LocaleFilter/Locale6Xml.fr_CA.xml  | 13 +++++++
+ tests/LocaleFilter/Locale6Xml.fr_CH.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale6Xml.fr_CH.xml  | 13 +++++++
+ tests/LocaleFilter/Locale6Xml.fr_FR.po   | 22 +++++++++++
+ tests/LocaleFilter/Locale6Xml.fr_FR.xml  | 13 +++++++
+ tests/LocaleFilter/Locale6Xml.joined.xml | 22 +++++++++++
+ tests/LocaleFilter/Locale6Xml.pot        | 23 ++++++++++++
+ tests/LocaleFilter/Locale6Xml.xml        | 20 ++++++++++
+ tests/run_tests.py                       | 16 ++++++++
  32 files changed, 279 insertions(+), 70 deletions(-)
 
 commit 9f85a74071db1fa5ca3a2dd83a3ab187884fb7f7
@@ -218,125 +360,125 @@ Date:   Sun Oct 27 22:36:56 2013 -0400
 
     Update ITS 2.0 test suite
 
- .../elementswithintext/html/withintext1html.html   |   64 ++++++++--------
- .../html/withintext1htmlrules.xml                  |    8 +-
- .../elementswithintext/html/withintext2html.html   |   20 +++---
- .../elementswithintext/html/withintext3html.html   |   64 ++++++++--------
- .../html/withintext3htmlrules.xml                  |   10 +-
- .../elementswithintext/html/withintext4html.html   |   76 ++++++++++----------
- .../elementswithintext/xml/withintext1xml.xml      |   24 +++---
- .../elementswithintext/xml/withintext2xml.xml      |   50 ++++++------
- .../elementswithintext/xml/withintext2xmlrules.xml |   12 ++--
- .../elementswithintext/xml/withintext3xml.xml      |   22 +++---
- .../elementswithintext/xml/withintext4xml.xml      |   24 +++---
- .../elementswithintext/xml/withintext5xml.xml      |   50 ++++++------
- .../elementswithintext/xml/withintext6xml.xml      |   42 +++++-----
- .../elementswithintext/xml/withintext6xmlrules.xml |   10 +-
- .../html/externalresource1html.html                |   30 ++++----
- .../html/externalresource1htmlrules.xml            |    8 +-
- .../html/externalresource2html.html                |   34 ++++----
- .../html/externalresource2htmlrules.xml            |    8 +-
- .../html/externalresource3html.html                |   40 +++++-----
- .../externalresource/xml/externalresource1xml.xml  |   48 ++++++------
- .../externalresource/xml/externalresource2xml.xml  |   44 ++++++------
- .../xml/externalresource2xmlrules.xml              |    6 +-
- .../externalresource/xml/externalresource3xml.xml  |   56 +++++++-------
- .../xml/externalresource3xmlrules.xml              |    6 +-
- .../externalresource/xml/externalresource4xml.xml  |   50 ++++++------
- .../externalresource/xml/externalresource5xml.xml  |   40 +++++-----
- .../xml/externalresource5xmlrules.xml              |   10 +-
- .../inputdata/idvalue/html/idvalue1html.html       |   32 ++++----
- .../inputdata/idvalue/html/idvalue1htmlrules.xml   |   12 ++--
- .../inputdata/idvalue/html/idvalue2html.html       |   34 ++++----
- .../inputdata/idvalue/html/idvalue2htmlrules.xml   |   14 ++--
- .../inputdata/idvalue/html/idvalue3html.html       |   44 ++++++------
- .../inputdata/idvalue/xml/idvalue1xml.xml          |   40 +++++-----
- .../inputdata/idvalue/xml/idvalue2xml.xml          |    8 +-
- .../inputdata/idvalue/xml/idvalue3xml.xml          |   26 +++---
- .../inputdata/idvalue/xml/idvalue3xmlrules.xml     |    6 +-
- .../inputdata/idvalue/xml/idvalue4xml.xml          |   34 ++++----
- .../inputdata/idvalue/xml/idvalue4xmlrules.xml     |    8 +-
- .../inputdata/idvalue/xml/idvalue5xml.xml          |   40 +++++-----
- .../inputdata/localefilter/html/locale1html.html   |   28 ++++----
- .../localefilter/html/locale1htmlrules.xml         |    6 +-
- .../inputdata/localefilter/html/locale2html.html   |   24 +++---
- .../inputdata/localefilter/html/locale3html.html   |   28 ++++----
- .../localefilter/html/locale3htmlrules.xml         |    8 +-
- .../inputdata/localefilter/html/locale4html.html   |   36 +++++-----
- .../inputdata/localefilter/html/locale5html.html   |   42 +++++-----
- .../inputdata/localefilter/xml/locale1xml.xml      |   24 +++---
- .../inputdata/localefilter/xml/locale2xml.xml      |   18 ++--
- .../inputdata/localefilter/xml/locale3xml.xml      |   20 +++---
- .../inputdata/localefilter/xml/locale3xmlrules.xml |    6 +-
- .../inputdata/localefilter/xml/locale4xml.xml      |   32 ++++----
- .../inputdata/localefilter/xml/locale4xmlrules.xml |    6 +-
- .../inputdata/localefilter/xml/locale5xml.xml      |   16 ++--
- .../inputdata/localefilter/xml/locale6xml.xml      |   26 +++---
- .../inputdata/localefilter/xml/locale7xml.xml      |   26 +++---
- .../inputdata/localefilter/xml/locale7xmlrules.xml |    8 +-
- .../inputdata/localefilter/xml/locale8xml.xml      |   36 +++++-----
- .../localizationnote/html/locnote1html.html        |   22 +++---
- .../localizationnote/html/locnote1htmlrules.xml    |   14 ++--
- .../localizationnote/html/locnote2html.html        |   40 +++++-----
- .../localizationnote/html/locnote2htmlrules.xml    |    8 +-
- .../localizationnote/html/locnote3html.html        |   24 +++---
- .../localizationnote/html/locnote3htmlrules.xml    |    6 +-
- .../localizationnote/html/locnote4html.html        |   32 ++++----
- .../localizationnote/html/locnote4htmlrules.xml    |    6 +-
- .../localizationnote/html/locnote5html.html        |   42 +++++-----
- .../localizationnote/html/locnote5htmlrules.xml    |   30 ++++----
- .../localizationnote/html/locnote6html.html        |   42 +++++-----
- .../localizationnote/html/locnote6htmlrules.xml    |   30 ++++----
- .../localizationnote/html/locnote7html.html        |   20 +++---
- .../localizationnote/html/locnote8html.html        |   42 +++++-----
- .../localizationnote/html/locnote8htmlrules.xml    |   32 ++++----
- .../localizationnote/html/locnote9html.html        |   40 +++++-----
- .../localizationnote/xml/locnote10xml.xml          |   66 ++++++++--------
- .../localizationnote/xml/locnote11xml.xml          |   36 +++++-----
- .../localizationnote/xml/locnote11xmlrules.xml     |   32 ++++----
- .../inputdata/localizationnote/xml/locnote1xml.xml |   26 +++---
- .../inputdata/localizationnote/xml/locnote2xml.xml |   38 +++++-----
- .../inputdata/localizationnote/xml/locnote3xml.xml |   24 +++---
- .../inputdata/localizationnote/xml/locnote4xml.xml |   32 ++++----
- .../inputdata/localizationnote/xml/locnote5xml.xml |   30 ++++----
- .../localizationnote/xml/locnote5xmlrules.xml      |   18 ++--
- .../inputdata/localizationnote/xml/locnote6xml.xml |   42 +++++-----
- .../inputdata/localizationnote/xml/locnote7xml.xml |   40 +++++-----
- .../inputdata/localizationnote/xml/locnote8xml.xml |   34 ++++----
- .../inputdata/localizationnote/xml/locnote9xml.xml |   16 ++--
- .../preservespace/xml/preservespace1xml.xml        |   26 +++---
- .../preservespace/xml/preservespace2xml.xml        |   16 ++--
- .../preservespace/xml/preservespace3xml.xml        |   22 +++---
- .../preservespace/xml/preservespace3xmlrules.xml   |    6 +-
- .../preservespace/xml/preservespace4xml.xml        |   16 ++--
- .../preservespace/xml/preservespace5xml.xml        |   28 ++++----
- .../preservespace/xml/preservespace6xml.xml        |   18 ++--
- .../preservespace/xml/preservespace6xmlrules.xml   |    8 +-
- .../inputdata/translate/html/translate1html.html   |   34 ++++----
- .../translate/html/translate1htmlrules.xml         |    8 +-
- .../inputdata/translate/html/translate2html.html   |   36 +++++-----
- .../inputdata/translate/html/translate3html.html   |   46 ++++++------
- .../translate/html/translate3htmlrules.xml         |    8 +-
- .../inputdata/translate/html/translate4html.html   |   46 ++++++------
- .../translate/html/translate4htmlrules.xml         |    8 +-
- .../inputdata/translate/html/translate5html.html   |   68 +++++++++---------
- .../translate/html/translate5htmlrules.xml         |    8 +-
- .../inputdata/translate/html/translate6html.html   |   68 +++++++++---------
- .../translate/html/translate6htmlrules.xml         |   12 ++--
- .../inputdata/translate/html/translate7html.html   |   38 +++++-----
- .../inputdata/translate/xml/translate10xml.xml     |   14 ++--
- .../translate/xml/translate10xmlrules.xml          |   10 +-
- .../inputdata/translate/xml/translate1xml.xml      |   78 ++++++++++----------
- .../inputdata/translate/xml/translate2xml.xml      |   20 +++---
- .../inputdata/translate/xml/translate2xmlrules.xml |   10 +-
- .../inputdata/translate/xml/translate3xml.xml      |   26 +++---
- .../inputdata/translate/xml/translate3xmlrules.xml |   12 ++--
- .../inputdata/translate/xml/translate4xml.xml      |   22 +++---
- .../inputdata/translate/xml/translate5xml.xml      |   26 +++---
- .../inputdata/translate/xml/translate6xml.xml      |   38 +++++-----
- .../inputdata/translate/xml/translate7xml.xml      |   38 +++++-----
- .../inputdata/translate/xml/translate8xml.xml      |   56 +++++++-------
- .../inputdata/translate/xml/translate9xml.xml      |   22 +++---
+ .../elementswithintext/html/withintext1html.html   | 64 +++++++++---------
+ .../html/withintext1htmlrules.xml                  |  8 +--
+ .../elementswithintext/html/withintext2html.html   | 20 +++---
+ .../elementswithintext/html/withintext3html.html   | 64 +++++++++---------
+ .../html/withintext3htmlrules.xml                  | 10 +--
+ .../elementswithintext/html/withintext4html.html   | 76 ++++++++++-----------
+ .../elementswithintext/xml/withintext1xml.xml      | 24 +++----
+ .../elementswithintext/xml/withintext2xml.xml      | 50 +++++++-------
+ .../elementswithintext/xml/withintext2xmlrules.xml | 12 ++--
+ .../elementswithintext/xml/withintext3xml.xml      | 22 +++---
+ .../elementswithintext/xml/withintext4xml.xml      | 24 +++----
+ .../elementswithintext/xml/withintext5xml.xml      | 50 +++++++-------
+ .../elementswithintext/xml/withintext6xml.xml      | 42 ++++++------
+ .../elementswithintext/xml/withintext6xmlrules.xml | 10 +--
+ .../html/externalresource1html.html                | 30 ++++-----
+ .../html/externalresource1htmlrules.xml            |  8 +--
+ .../html/externalresource2html.html                | 34 +++++-----
+ .../html/externalresource2htmlrules.xml            |  8 +--
+ .../html/externalresource3html.html                | 40 +++++------
+ .../externalresource/xml/externalresource1xml.xml  | 48 ++++++-------
+ .../externalresource/xml/externalresource2xml.xml  | 44 ++++++------
+ .../xml/externalresource2xmlrules.xml              |  6 +-
+ .../externalresource/xml/externalresource3xml.xml  | 56 ++++++++--------
+ .../xml/externalresource3xmlrules.xml              |  6 +-
+ .../externalresource/xml/externalresource4xml.xml  | 50 +++++++-------
+ .../externalresource/xml/externalresource5xml.xml  | 40 +++++------
+ .../xml/externalresource5xmlrules.xml              | 10 +--
+ .../inputdata/idvalue/html/idvalue1html.html       | 32 ++++-----
+ .../inputdata/idvalue/html/idvalue1htmlrules.xml   | 12 ++--
+ .../inputdata/idvalue/html/idvalue2html.html       | 34 +++++-----
+ .../inputdata/idvalue/html/idvalue2htmlrules.xml   | 14 ++--
+ .../inputdata/idvalue/html/idvalue3html.html       | 44 ++++++------
+ .../inputdata/idvalue/xml/idvalue1xml.xml          | 40 +++++------
+ .../inputdata/idvalue/xml/idvalue2xml.xml          |  8 +--
+ .../inputdata/idvalue/xml/idvalue3xml.xml          | 26 ++++----
+ .../inputdata/idvalue/xml/idvalue3xmlrules.xml     |  6 +-
+ .../inputdata/idvalue/xml/idvalue4xml.xml          | 34 +++++-----
+ .../inputdata/idvalue/xml/idvalue4xmlrules.xml     |  8 +--
+ .../inputdata/idvalue/xml/idvalue5xml.xml          | 40 +++++------
+ .../inputdata/localefilter/html/locale1html.html   | 28 ++++----
+ .../localefilter/html/locale1htmlrules.xml         |  6 +-
+ .../inputdata/localefilter/html/locale2html.html   | 24 +++----
+ .../inputdata/localefilter/html/locale3html.html   | 28 ++++----
+ .../localefilter/html/locale3htmlrules.xml         |  8 +--
+ .../inputdata/localefilter/html/locale4html.html   | 36 +++++-----
+ .../inputdata/localefilter/html/locale5html.html   | 42 ++++++------
+ .../inputdata/localefilter/xml/locale1xml.xml      | 24 +++----
+ .../inputdata/localefilter/xml/locale2xml.xml      | 18 ++---
+ .../inputdata/localefilter/xml/locale3xml.xml      | 20 +++---
+ .../inputdata/localefilter/xml/locale3xmlrules.xml |  6 +-
+ .../inputdata/localefilter/xml/locale4xml.xml      | 32 ++++-----
+ .../inputdata/localefilter/xml/locale4xmlrules.xml |  6 +-
+ .../inputdata/localefilter/xml/locale5xml.xml      | 16 ++---
+ .../inputdata/localefilter/xml/locale6xml.xml      | 26 ++++----
+ .../inputdata/localefilter/xml/locale7xml.xml      | 26 ++++----
+ .../inputdata/localefilter/xml/locale7xmlrules.xml |  8 +--
+ .../inputdata/localefilter/xml/locale8xml.xml      | 36 +++++-----
+ .../localizationnote/html/locnote1html.html        | 22 +++---
+ .../localizationnote/html/locnote1htmlrules.xml    | 14 ++--
+ .../localizationnote/html/locnote2html.html        | 40 +++++------
+ .../localizationnote/html/locnote2htmlrules.xml    |  8 +--
+ .../localizationnote/html/locnote3html.html        | 24 +++----
+ .../localizationnote/html/locnote3htmlrules.xml    |  6 +-
+ .../localizationnote/html/locnote4html.html        | 32 ++++-----
+ .../localizationnote/html/locnote4htmlrules.xml    |  6 +-
+ .../localizationnote/html/locnote5html.html        | 42 ++++++------
+ .../localizationnote/html/locnote5htmlrules.xml    | 30 ++++-----
+ .../localizationnote/html/locnote6html.html        | 42 ++++++------
+ .../localizationnote/html/locnote6htmlrules.xml    | 30 ++++-----
+ .../localizationnote/html/locnote7html.html        | 20 +++---
+ .../localizationnote/html/locnote8html.html        | 42 ++++++------
+ .../localizationnote/html/locnote8htmlrules.xml    | 32 ++++-----
+ .../localizationnote/html/locnote9html.html        | 40 +++++------
+ .../localizationnote/xml/locnote10xml.xml          | 66 +++++++++---------
+ .../localizationnote/xml/locnote11xml.xml          | 36 +++++-----
+ .../localizationnote/xml/locnote11xmlrules.xml     | 32 ++++-----
+ .../inputdata/localizationnote/xml/locnote1xml.xml | 26 ++++----
+ .../inputdata/localizationnote/xml/locnote2xml.xml | 38 +++++------
+ .../inputdata/localizationnote/xml/locnote3xml.xml | 24 +++----
+ .../inputdata/localizationnote/xml/locnote4xml.xml | 32 ++++-----
+ .../inputdata/localizationnote/xml/locnote5xml.xml | 30 ++++-----
+ .../localizationnote/xml/locnote5xmlrules.xml      | 18 ++---
+ .../inputdata/localizationnote/xml/locnote6xml.xml | 42 ++++++------
+ .../inputdata/localizationnote/xml/locnote7xml.xml | 40 +++++------
+ .../inputdata/localizationnote/xml/locnote8xml.xml | 34 +++++-----
+ .../inputdata/localizationnote/xml/locnote9xml.xml | 16 ++---
+ .../preservespace/xml/preservespace1xml.xml        | 26 ++++----
+ .../preservespace/xml/preservespace2xml.xml        | 16 ++---
+ .../preservespace/xml/preservespace3xml.xml        | 22 +++---
+ .../preservespace/xml/preservespace3xmlrules.xml   |  6 +-
+ .../preservespace/xml/preservespace4xml.xml        | 16 ++---
+ .../preservespace/xml/preservespace5xml.xml        | 28 ++++----
+ .../preservespace/xml/preservespace6xml.xml        | 18 ++---
+ .../preservespace/xml/preservespace6xmlrules.xml   |  8 +--
+ .../inputdata/translate/html/translate1html.html   | 34 +++++-----
+ .../translate/html/translate1htmlrules.xml         |  8 +--
+ .../inputdata/translate/html/translate2html.html   | 36 +++++-----
+ .../inputdata/translate/html/translate3html.html   | 46 ++++++-------
+ .../translate/html/translate3htmlrules.xml         |  8 +--
+ .../inputdata/translate/html/translate4html.html   | 46 ++++++-------
+ .../translate/html/translate4htmlrules.xml         |  8 +--
+ .../inputdata/translate/html/translate5html.html   | 68 +++++++++----------
+ .../translate/html/translate5htmlrules.xml         |  8 +--
+ .../inputdata/translate/html/translate6html.html   | 68 +++++++++----------
+ .../translate/html/translate6htmlrules.xml         | 12 ++--
+ .../inputdata/translate/html/translate7html.html   | 38 +++++------
+ .../inputdata/translate/xml/translate10xml.xml     | 14 ++--
+ .../translate/xml/translate10xmlrules.xml          | 10 +--
+ .../inputdata/translate/xml/translate1xml.xml      | 78 +++++++++++-----------
+ .../inputdata/translate/xml/translate2xml.xml      | 20 +++---
+ .../inputdata/translate/xml/translate2xmlrules.xml | 10 +--
+ .../inputdata/translate/xml/translate3xml.xml      | 26 ++++----
+ .../inputdata/translate/xml/translate3xmlrules.xml | 12 ++--
+ .../inputdata/translate/xml/translate4xml.xml      | 22 +++---
+ .../inputdata/translate/xml/translate5xml.xml      | 26 ++++----
+ .../inputdata/translate/xml/translate6xml.xml      | 38 +++++------
+ .../inputdata/translate/xml/translate7xml.xml      | 38 +++++------
+ .../inputdata/translate/xml/translate8xml.xml      | 56 ++++++++--------
+ .../inputdata/translate/xml/translate9xml.xml      | 22 +++---
  119 files changed, 1650 insertions(+), 1650 deletions(-)
 
 commit dde5a9ac006ab839b67e711e27977fbf074dc04e
@@ -345,8 +487,8 @@ Date:   Sun Oct 27 21:02:46 2013 -0400
 
     Add support for its:param
 
- itstool.in                           |   12 +++++++++++-
- tests/ITS-2.0-Testsuite/run_tests.sh |   16 +---------------
+ itstool.in                           | 12 +++++++++++-
+ tests/ITS-2.0-Testsuite/run_tests.sh | 16 +---------------
  2 files changed, 12 insertions(+), 16 deletions(-)
 
 commit 45872e7e4252aadd0fc304ab3c9d1d740c690b5f
@@ -355,8 +497,8 @@ Date:   Sun Oct 27 13:45:12 2013 -0400
 
     Fixed issue with preserveSpace from xml:space attribute
 
- itstool.in |   15 +++++++--------
- 1 files changed, 7 insertions(+), 8 deletions(-)
+ itstool.in | 15 +++++++--------
+ 1 file changed, 7 insertions(+), 8 deletions(-)
 
 commit 29d6a9ea85c8fb939b4fdaabb92e08eb42bfdefc
 Author: Shaun McCance <shaunm@gnome.org>
@@ -364,51 +506,51 @@ Date:   Sun Oct 27 13:45:00 2013 -0400
 
     Updated ITS 2.0 test suite
 
- .../html/withintext1htmloutput.txt                 |   14 +++++---
- .../html/withintext3htmloutput.txt                 |   12 ++++---
- .../html/withintext4htmloutput.txt                 |   16 +++++----
- .../html/externalresource1htmloutput.txt           |    7 ++--
- .../html/externalresource2htmloutput.txt           |   21 ++++++------
- .../html/externalresource3htmloutput.txt           |    7 ++--
- .../localefilter/html/locale1htmloutput.txt        |   24 +++++++-------
- .../localefilter/html/locale2htmloutput.txt        |   20 ++++++------
- .../localefilter/html/locale3htmloutput.txt        |   24 +++++++-------
- .../localefilter/html/locale4htmloutput.txt        |   22 ++++++------
- .../localefilter/html/locale5htmloutput.txt        |   21 ++++++++++++
- .../expected/localefilter/xml/locale1xmloutput.txt |   22 ++++++------
- .../expected/localefilter/xml/locale2xmloutput.txt |   12 +++---
- .../expected/localefilter/xml/locale3xmloutput.txt |   18 +++++-----
- .../expected/localefilter/xml/locale4xmloutput.txt |   34 ++++++++++----------
- .../expected/localefilter/xml/locale5xmloutput.txt |   12 +++---
- .../expected/localefilter/xml/locale6xmloutput.txt |   30 +++++++++---------
- .../expected/localefilter/xml/locale7xmloutput.txt |   24 +++++++-------
- .../expected/localefilter/xml/locale8xmloutput.txt |   19 +++++++++++
- .../localizationnote/xml/locnote1xmloutput.txt     |    1 -
- .../translate/html/translate1htmloutput.txt        |    7 +++-
- .../translate/html/translate2htmloutput.txt        |    6 +++
- .../translate/html/translate3htmloutput.txt        |    1 +
- .../translate/html/translate7htmloutput.txt        |    4 ++-
- .../expected/translate/xml/translate4xmloutput.txt |    5 +++
- .../elementswithintext/html/withintext1html.html   |   12 +++---
- .../html/withintext1htmlrules.xml                  |    2 -
- .../elementswithintext/html/withintext3html.html   |   14 ++++----
- .../html/withintext3htmlrules.xml                  |    5 +--
- .../elementswithintext/html/withintext4html.html   |   14 +++-----
- .../html/externalresource1html.html                |    4 +--
- .../html/externalresource2html.html                |    8 ++---
- .../html/externalresource2htmlrules.xml            |    2 +-
- .../html/externalresource3html.html                |    4 +--
- .../inputdata/idvalue/html/idvalue2htmlrules.xml   |    9 ++---
- .../inputdata/localefilter/html/locale5html.html   |   21 ++++++++++++
- .../inputdata/localefilter/xml/locale8xml.xml      |   18 ++++++++++
- .../inputdata/localizationnote/xml/locnote1xml.xml |    3 +-
- .../inputdata/translate/html/translate1html.html   |    1 +
- .../translate/html/translate1htmlrules.xml         |    2 +-
- .../inputdata/translate/html/translate2html.html   |    3 +-
- .../inputdata/translate/html/translate3html.html   |    2 +-
- .../inputdata/translate/html/translate7html.html   |    4 +-
- .../inputdata/translate/xml/translate4xml.xml      |    1 +
- tests/ITS-2.0-Testsuite/run_tests.sh               |    8 +++++
+ .../html/withintext1htmloutput.txt                 | 14 +++++----
+ .../html/withintext3htmloutput.txt                 | 12 ++++----
+ .../html/withintext4htmloutput.txt                 | 16 +++++-----
+ .../html/externalresource1htmloutput.txt           |  7 ++---
+ .../html/externalresource2htmloutput.txt           | 21 +++++++------
+ .../html/externalresource3htmloutput.txt           |  7 ++---
+ .../localefilter/html/locale1htmloutput.txt        | 24 +++++++--------
+ .../localefilter/html/locale2htmloutput.txt        | 20 ++++++-------
+ .../localefilter/html/locale3htmloutput.txt        | 24 +++++++--------
+ .../localefilter/html/locale4htmloutput.txt        | 22 +++++++-------
+ .../localefilter/html/locale5htmloutput.txt        | 21 +++++++++++++
+ .../expected/localefilter/xml/locale1xmloutput.txt | 22 +++++++-------
+ .../expected/localefilter/xml/locale2xmloutput.txt | 12 ++++----
+ .../expected/localefilter/xml/locale3xmloutput.txt | 18 ++++++------
+ .../expected/localefilter/xml/locale4xmloutput.txt | 34 +++++++++++-----------
+ .../expected/localefilter/xml/locale5xmloutput.txt | 12 ++++----
+ .../expected/localefilter/xml/locale6xmloutput.txt | 30 +++++++++----------
+ .../expected/localefilter/xml/locale7xmloutput.txt | 24 +++++++--------
+ .../expected/localefilter/xml/locale8xmloutput.txt | 19 ++++++++++++
+ .../localizationnote/xml/locnote1xmloutput.txt     |  1 -
+ .../translate/html/translate1htmloutput.txt        |  7 ++++-
+ .../translate/html/translate2htmloutput.txt        |  6 ++++
+ .../translate/html/translate3htmloutput.txt        |  1 +
+ .../translate/html/translate7htmloutput.txt        |  4 ++-
+ .../expected/translate/xml/translate4xmloutput.txt |  5 ++++
+ .../elementswithintext/html/withintext1html.html   | 12 ++++----
+ .../html/withintext1htmlrules.xml                  |  2 --
+ .../elementswithintext/html/withintext3html.html   | 14 ++++-----
+ .../html/withintext3htmlrules.xml                  |  5 ++--
+ .../elementswithintext/html/withintext4html.html   | 14 ++++-----
+ .../html/externalresource1html.html                |  4 +--
+ .../html/externalresource2html.html                |  8 ++---
+ .../html/externalresource2htmlrules.xml            |  2 +-
+ .../html/externalresource3html.html                |  4 +--
+ .../inputdata/idvalue/html/idvalue2htmlrules.xml   |  9 +++---
+ .../inputdata/localefilter/html/locale5html.html   | 21 +++++++++++++
+ .../inputdata/localefilter/xml/locale8xml.xml      | 18 ++++++++++++
+ .../inputdata/localizationnote/xml/locnote1xml.xml |  3 +-
+ .../inputdata/translate/html/translate1html.html   |  1 +
+ .../translate/html/translate1htmlrules.xml         |  2 +-
+ .../inputdata/translate/html/translate2html.html   |  3 +-
+ .../inputdata/translate/html/translate3html.html   |  2 +-
+ .../inputdata/translate/html/translate7html.html   |  4 +--
+ .../inputdata/translate/xml/translate4xml.xml      |  1 +
+ tests/ITS-2.0-Testsuite/run_tests.sh               |  8 +++++
  45 files changed, 309 insertions(+), 211 deletions(-)
 
 commit 2928d6f02a0f30415bd993490d1920fd990ce130
@@ -422,16 +564,16 @@ Date:   Sat Sep 21 16:24:35 2013 -0400
     it doesn't dereference them. It would be nice if this weren't
     necessary.
 
- itstool.in                      |   32 +++++++++++++++++++++++++++-----
- tests/IT-keep-entities-1.ll.po  |   21 +++++++++++++++++++++
- tests/IT-keep-entities-1.ll.xml |    7 +++++++
- tests/IT-keep-entities-1.pot    |   21 +++++++++++++++++++++
- tests/IT-keep-entities-1.xml    |    7 +++++++
- tests/IT-keep-entities-2.ll.po  |   21 +++++++++++++++++++++
- tests/IT-keep-entities-2.ll.xml |    9 +++++++++
- tests/IT-keep-entities-2.pot    |   21 +++++++++++++++++++++
- tests/IT-keep-entities-2.xml    |    9 +++++++++
- tests/run_tests.py              |   20 ++++++++++++++------
+ itstool.in                      | 32 +++++++++++++++++++++++++++-----
+ tests/IT-keep-entities-1.ll.po  | 21 +++++++++++++++++++++
+ tests/IT-keep-entities-1.ll.xml |  7 +++++++
+ tests/IT-keep-entities-1.pot    | 21 +++++++++++++++++++++
+ tests/IT-keep-entities-1.xml    |  7 +++++++
+ tests/IT-keep-entities-2.ll.po  | 21 +++++++++++++++++++++
+ tests/IT-keep-entities-2.ll.xml |  9 +++++++++
+ tests/IT-keep-entities-2.pot    | 21 +++++++++++++++++++++
+ tests/IT-keep-entities-2.xml    |  9 +++++++++
+ tests/run_tests.py              | 20 ++++++++++++++------
  10 files changed, 157 insertions(+), 11 deletions(-)
 
 commit 309b2cee105430c5ed387d7862e9405d41e76088
@@ -440,8 +582,8 @@ Date:   Sat Sep 21 12:17:12 2013 -0400
 
     Fix utf8 issue introduced in Sep 20 commit
 
- itstool.in |   10 ++++++----
- 1 files changed, 6 insertions(+), 4 deletions(-)
+ itstool.in | 10 ++++++----
+ 1 file changed, 6 insertions(+), 4 deletions(-)
 
 commit cf30d00a9d4802f9d7479d28a4a3ce420bc36aaf
 Merge: e4c6ada c9dd17a
@@ -463,8 +605,8 @@ Date:   Sun Jun 9 16:52:29 2013 +0200
 
     Configure: test for python module libxml2 presence
 
- configure.ac |   10 ++++++++++
- 1 files changed, 10 insertions(+), 0 deletions(-)
+ configure.ac | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
 
 commit ab2f5c7430c640cef0dddb7991dc9cfb77284332
 Author: Shaun McCance <shaunm@gnome.org>
@@ -472,8 +614,8 @@ Date:   Sat Feb 9 23:03:47 2013 -0500
 
     Properly handle loc note inheritance
 
- itstool.in                           |   11 +++++++----
- tests/ITS-2.0-Testsuite/run_tests.sh |    5 -----
+ itstool.in                           | 11 +++++++----
+ tests/ITS-2.0-Testsuite/run_tests.sh |  5 -----
  2 files changed, 7 insertions(+), 9 deletions(-)
 
 commit 2f77297d840b27a3b294fa098c4a9fb20130a954
@@ -482,8 +624,8 @@ Date:   Sat Feb 9 22:43:07 2013 -0500
 
     Add LocNote class to better track localization note info
 
- itstool.in                           |   69 ++++++++++++++++++++++++---------
- tests/ITS-2.0-Testsuite/run_tests.sh |    5 --
+ itstool.in                           | 69 ++++++++++++++++++++++++++----------
+ tests/ITS-2.0-Testsuite/run_tests.sh |  5 ---
  2 files changed, 50 insertions(+), 24 deletions(-)
 
 commit 64121755e4c515f184acd0f99bab20798a865178
@@ -492,8 +634,8 @@ Date:   Sat Feb 9 13:51:37 2013 -0500
 
     Fix IdValue for attributes and nodes with attributes
 
- itstool.in |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
+ itstool.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit a6becc8bbc4ce20217ba6a8bd11016297db2e607
 Author: Shaun McCance <shaunm@gnome.org>
@@ -503,206 +645,206 @@ Date:   Sat Feb 2 14:15:56 2013 -0500
     
     https://github.com/finnle/ITS-2.0-Testsuite/commits/master
 
- itstool.in                                         |   33 ++++++++---
- tests/ITS-2.0-Testsuite/README                     |    1 +
- .../html/withintext1htmloutput.txt                 |   24 ++++++++
- .../html/withintext2htmloutput.txt                 |   10 +++
- .../html/withintext3htmloutput.txt                 |   24 ++++++++
- .../html/withintext4htmloutput.txt                 |   24 ++++++++
- .../xml/withintext1xmloutput.txt                   |   17 +++++
- .../xml/withintext2xmloutput.txt                   |   28 +++++++++
- .../xml/withintext3xmloutput.txt                   |   15 +++++
- .../xml/withintext4xmloutput.txt                   |   15 +++++
- .../xml/withintext5xmloutput.txt                   |   20 ++++++
- .../xml/withintext6xmloutput.txt                   |   13 ++++
- .../html/externalresource1htmloutput.txt           |   19 ++++++
- .../html/externalresource2htmloutput.txt           |   21 +++++++
- .../html/externalresource3htmloutput.txt           |   18 ++++++
- .../xml/externalresource1xmloutput.txt             |   17 +++++
- .../xml/externalresource2xmloutput.txt             |   15 +++++
- .../xml/externalresource3xmloutput.txt             |   23 +++++++
- .../xml/externalresource4xmloutput.txt             |   19 ++++++
- .../xml/externalresource5xmloutput.txt             |   15 +++++
- .../expected/idvalue/html/idvalue1htmloutput.txt   |   15 +++++
- .../expected/idvalue/html/idvalue2htmloutput.txt   |   17 +++++
- .../expected/idvalue/html/idvalue3htmloutput.txt   |   14 ++++
- .../expected/idvalue/xml/idvalue1xmloutput.txt     |   18 ++++++
- .../expected/idvalue/xml/idvalue2xmloutput.txt     |    6 ++
- .../expected/idvalue/xml/idvalue3xmloutput.txt     |   14 ++++
- .../expected/idvalue/xml/idvalue4xmloutput.txt     |   18 ++++++
- .../expected/idvalue/xml/idvalue5xmloutput.txt     |   22 +++++++
- .../localefilter/html/locale1htmloutput.txt        |   12 ++++
- .../localefilter/html/locale2htmloutput.txt        |   10 +++
- .../localefilter/html/locale3htmloutput.txt        |   12 ++++
- .../localefilter/html/locale4htmloutput.txt        |   11 ++++
- .../expected/localefilter/xml/locale1xmloutput.txt |   11 ++++
- .../expected/localefilter/xml/locale2xmloutput.txt |    6 ++
- .../expected/localefilter/xml/locale3xmloutput.txt |    9 +++
- .../expected/localefilter/xml/locale4xmloutput.txt |   17 +++++
- .../expected/localefilter/xml/locale5xmloutput.txt |    6 ++
- .../expected/localefilter/xml/locale6xmloutput.txt |   15 +++++
- .../expected/localefilter/xml/locale7xmloutput.txt |   12 ++++
- .../localizationnote/html/locnote1htmloutput.txt   |   11 ++++
- .../localizationnote/html/locnote2htmloutput.txt   |   17 +++++
- .../localizationnote/html/locnote3htmloutput.txt   |   11 ++++
- .../localizationnote/html/locnote4htmloutput.txt   |   17 +++++
- .../localizationnote/html/locnote5htmloutput.txt   |   21 +++++++
- .../localizationnote/html/locnote6htmloutput.txt   |   21 +++++++
- .../localizationnote/html/locnote7htmloutput.txt   |   11 ++++
- .../localizationnote/html/locnote8htmloutput.txt   |   21 +++++++
- .../localizationnote/html/locnote9htmloutput.txt   |   11 ++++
- .../localizationnote/xml/locnote10xmloutput.txt    |   31 ++++++++++
- .../localizationnote/xml/locnote11xmloutput.txt    |   19 ++++++
- .../localizationnote/xml/locnote1xmloutput.txt     |   12 ++++
- .../localizationnote/xml/locnote2xmloutput.txt     |   20 ++++++
- .../localizationnote/xml/locnote3xmloutput.txt     |   11 ++++
- .../localizationnote/xml/locnote4xmloutput.txt     |   17 +++++
- .../localizationnote/xml/locnote5xmloutput.txt     |   23 +++++++
- .../localizationnote/xml/locnote6xmloutput.txt     |   29 +++++++++
- .../localizationnote/xml/locnote7xmloutput.txt     |   20 ++++++
- .../localizationnote/xml/locnote8xmloutput.txt     |   20 ++++++
- .../localizationnote/xml/locnote9xmloutput.txt     |   11 ++++
- .../preservespace/xml/preservespace1xmloutput.txt  |    9 +++
- .../preservespace/xml/preservespace2xmloutput.txt  |    4 +
- .../preservespace/xml/preservespace3xmloutput.txt  |    7 ++
- .../preservespace/xml/preservespace4xmloutput.txt  |    4 +
- .../preservespace/xml/preservespace5xmloutput.txt  |   12 ++++
- .../preservespace/xml/preservespace6xmloutput.txt  |    8 +++
- .../translate/html/translate1htmloutput.txt        |   13 ++++
- .../translate/html/translate2htmloutput.txt        |   11 ++++
- .../translate/html/translate3htmloutput.txt        |   15 +++++
- .../translate/html/translate4htmloutput.txt        |   15 +++++
- .../translate/html/translate5htmloutput.txt        |   24 ++++++++
- .../translate/html/translate6htmloutput.txt        |   24 ++++++++
- .../translate/html/translate7htmloutput.txt        |   12 ++++
- .../translate/xml/translate10xmloutput.txt         |   17 +++++
- .../expected/translate/xml/translate1xmloutput.txt |   59 ++++++++++++++++++
- .../expected/translate/xml/translate2xmloutput.txt |   11 ++++
- .../expected/translate/xml/translate3xmloutput.txt |   17 +++++
- .../expected/translate/xml/translate4xmloutput.txt |   10 +++
- .../expected/translate/xml/translate5xmloutput.txt |   11 ++++
- .../expected/translate/xml/translate6xmloutput.txt |   22 +++++++
- .../expected/translate/xml/translate7xmloutput.txt |   22 +++++++
- .../expected/translate/xml/translate8xmloutput.txt |   28 +++++++++
- .../expected/translate/xml/translate9xmloutput.txt |   23 +++++++
- .../elementswithintext/html/withintext1html.html   |   32 ++++++++++
- .../html/withintext1htmlrules.xml                  |    6 ++
- .../elementswithintext/html/withintext2html.html   |   10 +++
- .../elementswithintext/html/withintext3html.html   |   32 ++++++++++
- .../html/withintext3htmlrules.xml                  |    6 ++
- .../elementswithintext/html/withintext4html.html   |   40 ++++++++++++
- .../elementswithintext/xml/withintext1xml.xml      |   12 ++++
- .../elementswithintext/xml/withintext2xml.xml      |   25 ++++++++
- .../elementswithintext/xml/withintext2xmlrules.xml |    6 ++
- .../elementswithintext/xml/withintext3xml.xml      |   11 ++++
- .../elementswithintext/xml/withintext4xml.xml      |   12 ++++
- .../elementswithintext/xml/withintext5xml.xml      |   25 ++++++++
- .../elementswithintext/xml/withintext6xml.xml      |   21 +++++++
- .../elementswithintext/xml/withintext6xmlrules.xml |    5 ++
- .../html/externalresource1html.html                |   17 +++++
- .../html/externalresource1htmlrules.xml            |    4 +
- .../html/externalresource2html.html                |   19 ++++++
- .../html/externalresource2htmlrules.xml            |    4 +
- .../html/externalresource3html.html                |   22 +++++++
- .../externalresource/xml/externalresource1xml.xml  |   24 ++++++++
- .../externalresource/xml/externalresource2xml.xml  |   22 +++++++
- .../xml/externalresource2xmlrules.xml              |    3 +
- .../externalresource/xml/externalresource3xml.xml  |   28 +++++++++
- .../xml/externalresource3xmlrules.xml              |    3 +
- .../externalresource/xml/externalresource4xml.xml  |   25 ++++++++
- .../externalresource/xml/externalresource5xml.xml  |   20 ++++++
- .../xml/externalresource5xmlrules.xml              |    5 ++
- .../inputdata/idvalue/html/idvalue1html.html       |   16 +++++
- .../inputdata/idvalue/html/idvalue1htmlrules.xml   |    6 ++
- .../inputdata/idvalue/html/idvalue2html.html       |   17 +++++
- .../inputdata/idvalue/html/idvalue2htmlrules.xml   |    8 +++
- .../inputdata/idvalue/html/idvalue3html.html       |   22 +++++++
- .../inputdata/idvalue/xml/idvalue1xml.xml          |   20 ++++++
- .../inputdata/idvalue/xml/idvalue2xml.xml          |    4 +
- .../inputdata/idvalue/xml/idvalue3xml.xml          |   13 ++++
- .../inputdata/idvalue/xml/idvalue3xmlrules.xml     |    3 +
- .../inputdata/idvalue/xml/idvalue4xml.xml          |   17 +++++
- .../inputdata/idvalue/xml/idvalue4xmlrules.xml     |    4 +
- .../inputdata/idvalue/xml/idvalue5xml.xml          |   20 ++++++
- .../inputdata/localefilter/html/locale1html.html   |   14 ++++
- .../localefilter/html/locale1htmlrules.xml         |    3 +
- .../inputdata/localefilter/html/locale2html.html   |   12 ++++
- .../inputdata/localefilter/html/locale3html.html   |   14 ++++
- .../localefilter/html/locale3htmlrules.xml         |    4 +
- .../inputdata/localefilter/html/locale4html.html   |   18 ++++++
- .../inputdata/localefilter/xml/locale1xml.xml      |   12 ++++
- .../inputdata/localefilter/xml/locale2xml.xml      |    9 +++
- .../inputdata/localefilter/xml/locale3xml.xml      |   10 +++
- .../inputdata/localefilter/xml/locale3xmlrules.xml |    3 +
- .../inputdata/localefilter/xml/locale4xml.xml      |   16 +++++
- .../inputdata/localefilter/xml/locale4xmlrules.xml |    3 +
- .../inputdata/localefilter/xml/locale5xml.xml      |    8 +++
- .../inputdata/localefilter/xml/locale6xml.xml      |   14 ++++
- .../inputdata/localefilter/xml/locale7xml.xml      |   13 ++++
- .../inputdata/localefilter/xml/locale7xmlrules.xml |    4 +
- .../localizationnote/html/locnote1html.html        |   11 ++++
- .../localizationnote/html/locnote1htmlrules.xml    |    7 ++
- .../localizationnote/html/locnote2html.html        |   20 ++++++
- .../localizationnote/html/locnote2htmlrules.xml    |    4 +
- .../localizationnote/html/locnote3html.html        |   12 ++++
- .../localizationnote/html/locnote3htmlrules.xml    |    3 +
- .../localizationnote/html/locnote4html.html        |   16 +++++
- .../localizationnote/html/locnote4htmlrules.xml    |    3 +
- .../localizationnote/html/locnote5html.html        |   21 +++++++
- .../localizationnote/html/locnote5htmlrules.xml    |   15 +++++
- .../localizationnote/html/locnote6html.html        |   21 +++++++
- .../localizationnote/html/locnote6htmlrules.xml    |   15 +++++
- .../localizationnote/html/locnote7html.html        |   10 +++
- .../localizationnote/html/locnote8html.html        |   21 +++++++
- .../localizationnote/html/locnote8htmlrules.xml    |   16 +++++
- .../localizationnote/html/locnote9html.html        |   20 ++++++
- .../localizationnote/xml/locnote10xml.xml          |   33 ++++++++++
- .../localizationnote/xml/locnote11xml.xml          |   18 ++++++
- .../localizationnote/xml/locnote11xmlrules.xml     |   16 +++++
- .../inputdata/localizationnote/xml/locnote1xml.xml |   14 ++++
- .../inputdata/localizationnote/xml/locnote2xml.xml |   19 ++++++
- .../inputdata/localizationnote/xml/locnote3xml.xml |   12 ++++
- .../inputdata/localizationnote/xml/locnote4xml.xml |   16 +++++
- .../inputdata/localizationnote/xml/locnote5xml.xml |   15 +++++
- .../localizationnote/xml/locnote5xmlrules.xml      |    9 +++
- .../inputdata/localizationnote/xml/locnote6xml.xml |   21 +++++++
- .../inputdata/localizationnote/xml/locnote7xml.xml |   20 ++++++
- .../inputdata/localizationnote/xml/locnote8xml.xml |   17 +++++
- .../inputdata/localizationnote/xml/locnote9xml.xml |    8 +++
- .../preservespace/xml/preservespace1xml.xml        |   13 ++++
- .../preservespace/xml/preservespace2xml.xml        |    8 +++
- .../preservespace/xml/preservespace3xml.xml        |   11 ++++
- .../preservespace/xml/preservespace3xmlrules.xml   |    3 +
- .../preservespace/xml/preservespace4xml.xml        |    8 +++
- .../preservespace/xml/preservespace5xml.xml        |   14 ++++
- .../preservespace/xml/preservespace6xml.xml        |    9 +++
- .../preservespace/xml/preservespace6xmlrules.xml   |    4 +
- .../inputdata/translate/html/translate1html.html   |   16 +++++
- .../translate/html/translate1htmlrules.xml         |    4 +
- .../inputdata/translate/html/translate2html.html   |   17 +++++
- .../inputdata/translate/html/translate3html.html   |   23 +++++++
- .../translate/html/translate3htmlrules.xml         |    4 +
- .../inputdata/translate/html/translate4html.html   |   23 +++++++
- .../translate/html/translate4htmlrules.xml         |    4 +
- .../inputdata/translate/html/translate5html.html   |   34 +++++++++++
- .../translate/html/translate5htmlrules.xml         |    4 +
- .../inputdata/translate/html/translate6html.html   |   34 +++++++++++
- .../translate/html/translate6htmlrules.xml         |    6 ++
- .../inputdata/translate/html/translate7html.html   |   19 ++++++
- .../inputdata/translate/xml/translate10xml.xml     |    7 ++
- .../translate/xml/translate10xmlrules.xml          |    5 ++
- .../inputdata/translate/xml/translate1xml.xml      |   39 ++++++++++++
- .../inputdata/translate/xml/translate2xml.xml      |   10 +++
- .../inputdata/translate/xml/translate2xmlrules.xml |    5 ++
- .../inputdata/translate/xml/translate3xml.xml      |   13 ++++
- .../inputdata/translate/xml/translate3xmlrules.xml |    6 ++
- .../inputdata/translate/xml/translate4xml.xml      |   10 +++
- .../inputdata/translate/xml/translate5xml.xml      |   13 ++++
- .../inputdata/translate/xml/translate6xml.xml      |   19 ++++++
- .../inputdata/translate/xml/translate7xml.xml      |   19 ++++++
- .../inputdata/translate/xml/translate8xml.xml      |   28 +++++++++
- .../inputdata/translate/xml/translate9xml.xml      |   11 ++++
- tests/ITS-2.0-Testsuite/run_tests.sh               |   63 ++++++++++++++++++++
+ itstool.in                                         | 33 +++++++++---
+ tests/ITS-2.0-Testsuite/README                     |  1 +
+ .../html/withintext1htmloutput.txt                 | 24 +++++++++
+ .../html/withintext2htmloutput.txt                 | 10 ++++
+ .../html/withintext3htmloutput.txt                 | 24 +++++++++
+ .../html/withintext4htmloutput.txt                 | 24 +++++++++
+ .../xml/withintext1xmloutput.txt                   | 17 ++++++
+ .../xml/withintext2xmloutput.txt                   | 28 ++++++++++
+ .../xml/withintext3xmloutput.txt                   | 15 ++++++
+ .../xml/withintext4xmloutput.txt                   | 15 ++++++
+ .../xml/withintext5xmloutput.txt                   | 20 +++++++
+ .../xml/withintext6xmloutput.txt                   | 13 +++++
+ .../html/externalresource1htmloutput.txt           | 19 +++++++
+ .../html/externalresource2htmloutput.txt           | 21 ++++++++
+ .../html/externalresource3htmloutput.txt           | 18 +++++++
+ .../xml/externalresource1xmloutput.txt             | 17 ++++++
+ .../xml/externalresource2xmloutput.txt             | 15 ++++++
+ .../xml/externalresource3xmloutput.txt             | 23 ++++++++
+ .../xml/externalresource4xmloutput.txt             | 19 +++++++
+ .../xml/externalresource5xmloutput.txt             | 15 ++++++
+ .../expected/idvalue/html/idvalue1htmloutput.txt   | 15 ++++++
+ .../expected/idvalue/html/idvalue2htmloutput.txt   | 17 ++++++
+ .../expected/idvalue/html/idvalue3htmloutput.txt   | 14 +++++
+ .../expected/idvalue/xml/idvalue1xmloutput.txt     | 18 +++++++
+ .../expected/idvalue/xml/idvalue2xmloutput.txt     |  6 +++
+ .../expected/idvalue/xml/idvalue3xmloutput.txt     | 14 +++++
+ .../expected/idvalue/xml/idvalue4xmloutput.txt     | 18 +++++++
+ .../expected/idvalue/xml/idvalue5xmloutput.txt     | 22 ++++++++
+ .../localefilter/html/locale1htmloutput.txt        | 12 +++++
+ .../localefilter/html/locale2htmloutput.txt        | 10 ++++
+ .../localefilter/html/locale3htmloutput.txt        | 12 +++++
+ .../localefilter/html/locale4htmloutput.txt        | 11 ++++
+ .../expected/localefilter/xml/locale1xmloutput.txt | 11 ++++
+ .../expected/localefilter/xml/locale2xmloutput.txt |  6 +++
+ .../expected/localefilter/xml/locale3xmloutput.txt |  9 ++++
+ .../expected/localefilter/xml/locale4xmloutput.txt | 17 ++++++
+ .../expected/localefilter/xml/locale5xmloutput.txt |  6 +++
+ .../expected/localefilter/xml/locale6xmloutput.txt | 15 ++++++
+ .../expected/localefilter/xml/locale7xmloutput.txt | 12 +++++
+ .../localizationnote/html/locnote1htmloutput.txt   | 11 ++++
+ .../localizationnote/html/locnote2htmloutput.txt   | 17 ++++++
+ .../localizationnote/html/locnote3htmloutput.txt   | 11 ++++
+ .../localizationnote/html/locnote4htmloutput.txt   | 17 ++++++
+ .../localizationnote/html/locnote5htmloutput.txt   | 21 ++++++++
+ .../localizationnote/html/locnote6htmloutput.txt   | 21 ++++++++
+ .../localizationnote/html/locnote7htmloutput.txt   | 11 ++++
+ .../localizationnote/html/locnote8htmloutput.txt   | 21 ++++++++
+ .../localizationnote/html/locnote9htmloutput.txt   | 11 ++++
+ .../localizationnote/xml/locnote10xmloutput.txt    | 31 +++++++++++
+ .../localizationnote/xml/locnote11xmloutput.txt    | 19 +++++++
+ .../localizationnote/xml/locnote1xmloutput.txt     | 12 +++++
+ .../localizationnote/xml/locnote2xmloutput.txt     | 20 +++++++
+ .../localizationnote/xml/locnote3xmloutput.txt     | 11 ++++
+ .../localizationnote/xml/locnote4xmloutput.txt     | 17 ++++++
+ .../localizationnote/xml/locnote5xmloutput.txt     | 23 ++++++++
+ .../localizationnote/xml/locnote6xmloutput.txt     | 29 ++++++++++
+ .../localizationnote/xml/locnote7xmloutput.txt     | 20 +++++++
+ .../localizationnote/xml/locnote8xmloutput.txt     | 20 +++++++
+ .../localizationnote/xml/locnote9xmloutput.txt     | 11 ++++
+ .../preservespace/xml/preservespace1xmloutput.txt  |  9 ++++
+ .../preservespace/xml/preservespace2xmloutput.txt  |  4 ++
+ .../preservespace/xml/preservespace3xmloutput.txt  |  7 +++
+ .../preservespace/xml/preservespace4xmloutput.txt  |  4 ++
+ .../preservespace/xml/preservespace5xmloutput.txt  | 12 +++++
+ .../preservespace/xml/preservespace6xmloutput.txt  |  8 +++
+ .../translate/html/translate1htmloutput.txt        | 13 +++++
+ .../translate/html/translate2htmloutput.txt        | 11 ++++
+ .../translate/html/translate3htmloutput.txt        | 15 ++++++
+ .../translate/html/translate4htmloutput.txt        | 15 ++++++
+ .../translate/html/translate5htmloutput.txt        | 24 +++++++++
+ .../translate/html/translate6htmloutput.txt        | 24 +++++++++
+ .../translate/html/translate7htmloutput.txt        | 12 +++++
+ .../translate/xml/translate10xmloutput.txt         | 17 ++++++
+ .../expected/translate/xml/translate1xmloutput.txt | 59 ++++++++++++++++++++
+ .../expected/translate/xml/translate2xmloutput.txt | 11 ++++
+ .../expected/translate/xml/translate3xmloutput.txt | 17 ++++++
+ .../expected/translate/xml/translate4xmloutput.txt | 10 ++++
+ .../expected/translate/xml/translate5xmloutput.txt | 11 ++++
+ .../expected/translate/xml/translate6xmloutput.txt | 22 ++++++++
+ .../expected/translate/xml/translate7xmloutput.txt | 22 ++++++++
+ .../expected/translate/xml/translate8xmloutput.txt | 28 ++++++++++
+ .../expected/translate/xml/translate9xmloutput.txt | 23 ++++++++
+ .../elementswithintext/html/withintext1html.html   | 32 +++++++++++
+ .../html/withintext1htmlrules.xml                  |  6 +++
+ .../elementswithintext/html/withintext2html.html   | 10 ++++
+ .../elementswithintext/html/withintext3html.html   | 32 +++++++++++
+ .../html/withintext3htmlrules.xml                  |  6 +++
+ .../elementswithintext/html/withintext4html.html   | 40 ++++++++++++++
+ .../elementswithintext/xml/withintext1xml.xml      | 12 +++++
+ .../elementswithintext/xml/withintext2xml.xml      | 25 +++++++++
+ .../elementswithintext/xml/withintext2xmlrules.xml |  6 +++
+ .../elementswithintext/xml/withintext3xml.xml      | 11 ++++
+ .../elementswithintext/xml/withintext4xml.xml      | 12 +++++
+ .../elementswithintext/xml/withintext5xml.xml      | 25 +++++++++
+ .../elementswithintext/xml/withintext6xml.xml      | 21 ++++++++
+ .../elementswithintext/xml/withintext6xmlrules.xml |  5 ++
+ .../html/externalresource1html.html                | 17 ++++++
+ .../html/externalresource1htmlrules.xml            |  4 ++
+ .../html/externalresource2html.html                | 19 +++++++
+ .../html/externalresource2htmlrules.xml            |  4 ++
+ .../html/externalresource3html.html                | 22 ++++++++
+ .../externalresource/xml/externalresource1xml.xml  | 24 +++++++++
+ .../externalresource/xml/externalresource2xml.xml  | 22 ++++++++
+ .../xml/externalresource2xmlrules.xml              |  3 ++
+ .../externalresource/xml/externalresource3xml.xml  | 28 ++++++++++
+ .../xml/externalresource3xmlrules.xml              |  3 ++
+ .../externalresource/xml/externalresource4xml.xml  | 25 +++++++++
+ .../externalresource/xml/externalresource5xml.xml  | 20 +++++++
+ .../xml/externalresource5xmlrules.xml              |  5 ++
+ .../inputdata/idvalue/html/idvalue1html.html       | 16 ++++++
+ .../inputdata/idvalue/html/idvalue1htmlrules.xml   |  6 +++
+ .../inputdata/idvalue/html/idvalue2html.html       | 17 ++++++
+ .../inputdata/idvalue/html/idvalue2htmlrules.xml   |  8 +++
+ .../inputdata/idvalue/html/idvalue3html.html       | 22 ++++++++
+ .../inputdata/idvalue/xml/idvalue1xml.xml          | 20 +++++++
+ .../inputdata/idvalue/xml/idvalue2xml.xml          |  4 ++
+ .../inputdata/idvalue/xml/idvalue3xml.xml          | 13 +++++
+ .../inputdata/idvalue/xml/idvalue3xmlrules.xml     |  3 ++
+ .../inputdata/idvalue/xml/idvalue4xml.xml          | 17 ++++++
+ .../inputdata/idvalue/xml/idvalue4xmlrules.xml     |  4 ++
+ .../inputdata/idvalue/xml/idvalue5xml.xml          | 20 +++++++
+ .../inputdata/localefilter/html/locale1html.html   | 14 +++++
+ .../localefilter/html/locale1htmlrules.xml         |  3 ++
+ .../inputdata/localefilter/html/locale2html.html   | 12 +++++
+ .../inputdata/localefilter/html/locale3html.html   | 14 +++++
+ .../localefilter/html/locale3htmlrules.xml         |  4 ++
+ .../inputdata/localefilter/html/locale4html.html   | 18 +++++++
+ .../inputdata/localefilter/xml/locale1xml.xml      | 12 +++++
+ .../inputdata/localefilter/xml/locale2xml.xml      |  9 ++++
+ .../inputdata/localefilter/xml/locale3xml.xml      | 10 ++++
+ .../inputdata/localefilter/xml/locale3xmlrules.xml |  3 ++
+ .../inputdata/localefilter/xml/locale4xml.xml      | 16 ++++++
+ .../inputdata/localefilter/xml/locale4xmlrules.xml |  3 ++
+ .../inputdata/localefilter/xml/locale5xml.xml      |  8 +++
+ .../inputdata/localefilter/xml/locale6xml.xml      | 14 +++++
+ .../inputdata/localefilter/xml/locale7xml.xml      | 13 +++++
+ .../inputdata/localefilter/xml/locale7xmlrules.xml |  4 ++
+ .../localizationnote/html/locnote1html.html        | 11 ++++
+ .../localizationnote/html/locnote1htmlrules.xml    |  7 +++
+ .../localizationnote/html/locnote2html.html        | 20 +++++++
+ .../localizationnote/html/locnote2htmlrules.xml    |  4 ++
+ .../localizationnote/html/locnote3html.html        | 12 +++++
+ .../localizationnote/html/locnote3htmlrules.xml    |  3 ++
+ .../localizationnote/html/locnote4html.html        | 16 ++++++
+ .../localizationnote/html/locnote4htmlrules.xml    |  3 ++
+ .../localizationnote/html/locnote5html.html        | 21 ++++++++
+ .../localizationnote/html/locnote5htmlrules.xml    | 15 ++++++
+ .../localizationnote/html/locnote6html.html        | 21 ++++++++
+ .../localizationnote/html/locnote6htmlrules.xml    | 15 ++++++
+ .../localizationnote/html/locnote7html.html        | 10 ++++
+ .../localizationnote/html/locnote8html.html        | 21 ++++++++
+ .../localizationnote/html/locnote8htmlrules.xml    | 16 ++++++
+ .../localizationnote/html/locnote9html.html        | 20 +++++++
+ .../localizationnote/xml/locnote10xml.xml          | 33 ++++++++++++
+ .../localizationnote/xml/locnote11xml.xml          | 18 +++++++
+ .../localizationnote/xml/locnote11xmlrules.xml     | 16 ++++++
+ .../inputdata/localizationnote/xml/locnote1xml.xml | 14 +++++
+ .../inputdata/localizationnote/xml/locnote2xml.xml | 19 +++++++
+ .../inputdata/localizationnote/xml/locnote3xml.xml | 12 +++++
+ .../inputdata/localizationnote/xml/locnote4xml.xml | 16 ++++++
+ .../inputdata/localizationnote/xml/locnote5xml.xml | 15 ++++++
+ .../localizationnote/xml/locnote5xmlrules.xml      |  9 ++++
+ .../inputdata/localizationnote/xml/locnote6xml.xml | 21 ++++++++
+ .../inputdata/localizationnote/xml/locnote7xml.xml | 20 +++++++
+ .../inputdata/localizationnote/xml/locnote8xml.xml | 17 ++++++
+ .../inputdata/localizationnote/xml/locnote9xml.xml |  8 +++
+ .../preservespace/xml/preservespace1xml.xml        | 13 +++++
+ .../preservespace/xml/preservespace2xml.xml        |  8 +++
+ .../preservespace/xml/preservespace3xml.xml        | 11 ++++
+ .../preservespace/xml/preservespace3xmlrules.xml   |  3 ++
+ .../preservespace/xml/preservespace4xml.xml        |  8 +++
+ .../preservespace/xml/preservespace5xml.xml        | 14 +++++
+ .../preservespace/xml/preservespace6xml.xml        |  9 ++++
+ .../preservespace/xml/preservespace6xmlrules.xml   |  4 ++
+ .../inputdata/translate/html/translate1html.html   | 16 ++++++
+ .../translate/html/translate1htmlrules.xml         |  4 ++
+ .../inputdata/translate/html/translate2html.html   | 17 ++++++
+ .../inputdata/translate/html/translate3html.html   | 23 ++++++++
+ .../translate/html/translate3htmlrules.xml         |  4 ++
+ .../inputdata/translate/html/translate4html.html   | 23 ++++++++
+ .../translate/html/translate4htmlrules.xml         |  4 ++
+ .../inputdata/translate/html/translate5html.html   | 34 ++++++++++++
+ .../translate/html/translate5htmlrules.xml         |  4 ++
+ .../inputdata/translate/html/translate6html.html   | 34 ++++++++++++
+ .../translate/html/translate6htmlrules.xml         |  6 +++
+ .../inputdata/translate/html/translate7html.html   | 19 +++++++
+ .../inputdata/translate/xml/translate10xml.xml     |  7 +++
+ .../translate/xml/translate10xmlrules.xml          |  5 ++
+ .../inputdata/translate/xml/translate1xml.xml      | 39 ++++++++++++++
+ .../inputdata/translate/xml/translate2xml.xml      | 10 ++++
+ .../inputdata/translate/xml/translate2xmlrules.xml |  5 ++
+ .../inputdata/translate/xml/translate3xml.xml      | 13 +++++
+ .../inputdata/translate/xml/translate3xmlrules.xml |  6 +++
+ .../inputdata/translate/xml/translate4xml.xml      | 10 ++++
+ .../inputdata/translate/xml/translate5xml.xml      | 13 +++++
+ .../inputdata/translate/xml/translate6xml.xml      | 19 +++++++
+ .../inputdata/translate/xml/translate7xml.xml      | 19 +++++++
+ .../inputdata/translate/xml/translate8xml.xml      | 28 ++++++++++
+ .../inputdata/translate/xml/translate9xml.xml      | 11 ++++
+ tests/ITS-2.0-Testsuite/run_tests.sh               | 63 ++++++++++++++++++++++
  200 files changed, 3025 insertions(+), 8 deletions(-)
 
 commit 24811c8cfcbc14cc480a2fbef2288245019f8a7e
@@ -711,16 +853,16 @@ Date:   Wed Sep 26 07:46:10 2012 -0400
 
     Implemented ITS 2.0 "ID Value" data category
 
- itstool.in                        |   48 ++++++++++++++++++++++++++++++++++++-
- tests/IdValue/idvalue1xml.pot     |   23 +++++++++++++++++
- tests/IdValue/idvalue1xml.xml     |   12 +++++++++
- tests/IdValue/idvalue2xml.pot     |   22 +++++++++++++++++
- tests/IdValue/idvalue2xml.xml     |    4 +++
- tests/IdValue/idvalue3XmlRule.xml |    4 +++
- tests/IdValue/idvalue3xml.pot     |   23 +++++++++++++++++
- tests/IdValue/idvalue3xml.xml     |   11 ++++++++
- tests/run_tests.py                |    9 +++++++
- 9 files changed, 155 insertions(+), 1 deletions(-)
+ itstool.in                        | 48 ++++++++++++++++++++++++++++++++++++++-
+ tests/IdValue/idvalue1xml.pot     | 23 +++++++++++++++++++
+ tests/IdValue/idvalue1xml.xml     | 12 ++++++++++
+ tests/IdValue/idvalue2xml.pot     | 22 ++++++++++++++++++
+ tests/IdValue/idvalue2xml.xml     |  4 ++++
+ tests/IdValue/idvalue3XmlRule.xml |  4 ++++
+ tests/IdValue/idvalue3xml.pot     | 23 +++++++++++++++++++
+ tests/IdValue/idvalue3xml.xml     | 11 +++++++++
+ tests/run_tests.py                |  9 ++++++++
+ 9 files changed, 155 insertions(+), 1 deletion(-)
 
 commit 1440e3b495ae502658e5e5ede6c09babce4bc4f9
 Author: Shaun McCance <shaunm@gnome.org>
@@ -728,16 +870,16 @@ Date:   Fri Sep 21 09:39:42 2012 -0400
 
     Support for local withinText
 
- itstool.in                                    |   12 ++++++++++--
- tests/elementwithintextLocalXml.ll.po         |   16 ++++++++++++++++
- tests/elementwithintextLocalXml.ll.xml        |    6 ++++++
- tests/elementwithintextLocalXml.pot           |   16 ++++++++++++++++
- tests/elementwithintextLocalXml.xml           |    8 ++++++++
- tests/elementwithintextlocalitsSpanXml.ll.po  |   16 ++++++++++++++++
- tests/elementwithintextlocalitsSpanXml.ll.xml |    6 ++++++
- tests/elementwithintextlocalitsSpanXml.pot    |   16 ++++++++++++++++
- tests/elementwithintextlocalitsSpanXml.xml    |    7 +++++++
- tests/run_tests.py                            |    6 ++++++
+ itstool.in                                    | 12 ++++++++++--
+ tests/elementwithintextLocalXml.ll.po         | 16 ++++++++++++++++
+ tests/elementwithintextLocalXml.ll.xml        |  6 ++++++
+ tests/elementwithintextLocalXml.pot           | 16 ++++++++++++++++
+ tests/elementwithintextLocalXml.xml           |  8 ++++++++
+ tests/elementwithintextlocalitsSpanXml.ll.po  | 16 ++++++++++++++++
+ tests/elementwithintextlocalitsSpanXml.ll.xml |  6 ++++++
+ tests/elementwithintextlocalitsSpanXml.pot    | 16 ++++++++++++++++
+ tests/elementwithintextlocalitsSpanXml.xml    |  7 +++++++
+ tests/run_tests.py                            |  6 ++++++
  10 files changed, 107 insertions(+), 2 deletions(-)
 
 commit 2bca336117edee032ad956994d2ef3650f25e322
@@ -746,11 +888,11 @@ Date:   Thu Sep 20 20:12:36 2012 -0400
 
     Fix tests for namespace prefix handling
 
- itstool.in                 |    8 ++++----
- tests/IT-prefixes-1.ll.po  |   16 +++-------------
- tests/IT-prefixes-1.ll.xml |    7 ++++++-
- tests/IT-prefixes-1.pot    |   16 +++-------------
- tests/IT-prefixes-1.xml    |    5 +++++
+ itstool.in                 |  8 ++++----
+ tests/IT-prefixes-1.ll.po  | 16 +++-------------
+ tests/IT-prefixes-1.ll.xml |  7 ++++++-
+ tests/IT-prefixes-1.pot    | 16 +++-------------
+ tests/IT-prefixes-1.xml    |  5 +++++
  5 files changed, 21 insertions(+), 31 deletions(-)
 
 commit 3a56e53c4cd157da0c5f21c18806047e6b64eddb
@@ -766,12 +908,12 @@ Date:   Thu Sep 20 18:37:44 2012 -0400
 
     Support namespace prefixes on elements
 
- itstool.in                 |   10 ++++++++--
- tests/IT-prefixes-1.ll.po  |   36 ++++++++++++++++++++++++++++++++++++
- tests/IT-prefixes-1.ll.xml |   16 ++++++++++++++++
- tests/IT-prefixes-1.pot    |   36 ++++++++++++++++++++++++++++++++++++
- tests/IT-prefixes-1.xml    |   19 +++++++++++++++++++
- tests/run_tests.py         |    3 +++
+ itstool.in                 | 10 ++++++++--
+ tests/IT-prefixes-1.ll.po  | 36 ++++++++++++++++++++++++++++++++++++
+ tests/IT-prefixes-1.ll.xml | 16 ++++++++++++++++
+ tests/IT-prefixes-1.pot    | 36 ++++++++++++++++++++++++++++++++++++
+ tests/IT-prefixes-1.xml    | 19 +++++++++++++++++++
+ tests/run_tests.py         |  3 +++
  6 files changed, 118 insertions(+), 2 deletions(-)
 
 commit 70f6f5ef01dc03e624e47a341b146ac099be4ebd
@@ -780,8 +922,8 @@ Date:   Wed Sep 19 19:58:37 2012 -0400
 
     Adding test output for External Resource
 
- itstool.in |    2 ++
- 1 files changed, 2 insertions(+), 0 deletions(-)
+ itstool.in | 2 ++
+ 1 file changed, 2 insertions(+)
 
 commit a0880365b8562d59e81889e980429aef840f89c4
 Author: Shaun McCance <shaunm@gnome.org>
@@ -789,9 +931,9 @@ Date:   Wed Sep 19 16:49:47 2012 -0400
 
     Use External Resource implementation for itst:externalRefRule
 
- itstool.in                  |   46 +++++-------------------------------------
- tests/IT-externalRef1.ll.po |   12 +++++-----
- tests/IT-externalRef1.pot   |   12 +++++-----
+ itstool.in                  | 46 ++++++---------------------------------------
+ tests/IT-externalRef1.ll.po | 12 ++++++------
+ tests/IT-externalRef1.pot   | 12 ++++++------
  3 files changed, 18 insertions(+), 52 deletions(-)
 
 commit fee986b054284b029b7b870eff6ded9fd53e43a0
@@ -800,31 +942,31 @@ Date:   Wed Sep 19 16:44:37 2012 -0400
 
     Implemented ITS 2.0 External Resource data category
 
- itstool.in                                         |   51 ++++++++++++++++++++
- .../Attr/ExternalResource1AttrXml.pot              |   41 ++++++++++++++++
- .../Attr/ExternalResource1AttrXml.xml              |   24 +++++++++
- .../Attr/ExternalResource2AttrRule.xml             |    3 +
- .../Attr/ExternalResource2AttrXml.pot              |   41 ++++++++++++++++
- .../Attr/ExternalResource2AttrXml.xml              |   22 ++++++++
- .../Attr/ExternalResource3AttrRule.xml             |    3 +
- .../Attr/ExternalResource3AttrXml.pot              |   51 ++++++++++++++++++++
- .../Attr/ExternalResource3AttrXml.xml              |   28 +++++++++++
- tests/ExternalResource/Attr/movie-frame.gif        |    1 +
- tests/ExternalResource/Attr/movie.avi              |    1 +
- tests/ExternalResource/Attr/movie.mp3              |    1 +
- tests/ExternalResource/ExternalResource1Xml.pot    |   41 ++++++++++++++++
- tests/ExternalResource/ExternalResource1Xml.xml    |   24 +++++++++
- tests/ExternalResource/ExternalResource2Rule.xml   |    3 +
- tests/ExternalResource/ExternalResource2Xml.pot    |   41 ++++++++++++++++
- tests/ExternalResource/ExternalResource2Xml.xml    |   22 ++++++++
- tests/ExternalResource/ExternalResource3Rule.xml   |    3 +
- tests/ExternalResource/ExternalResource3Xml.pot    |   51 ++++++++++++++++++++
- tests/ExternalResource/ExternalResource3Xml.xml    |   28 +++++++++++
- tests/ExternalResource/movie-frame.gif             |    1 +
- tests/ExternalResource/movie.avi                   |    1 +
- tests/ExternalResource/movie.mp3                   |    1 +
- tests/run_tests.py                                 |   18 +++++++
- 24 files changed, 501 insertions(+), 0 deletions(-)
+ itstool.in                                         | 51 ++++++++++++++++++++++
+ .../Attr/ExternalResource1AttrXml.pot              | 41 +++++++++++++++++
+ .../Attr/ExternalResource1AttrXml.xml              | 24 ++++++++++
+ .../Attr/ExternalResource2AttrRule.xml             |  3 ++
+ .../Attr/ExternalResource2AttrXml.pot              | 41 +++++++++++++++++
+ .../Attr/ExternalResource2AttrXml.xml              | 22 ++++++++++
+ .../Attr/ExternalResource3AttrRule.xml             |  3 ++
+ .../Attr/ExternalResource3AttrXml.pot              | 51 ++++++++++++++++++++++
+ .../Attr/ExternalResource3AttrXml.xml              | 28 ++++++++++++
+ tests/ExternalResource/Attr/movie-frame.gif        |  1 +
+ tests/ExternalResource/Attr/movie.avi              |  1 +
+ tests/ExternalResource/Attr/movie.mp3              |  1 +
+ tests/ExternalResource/ExternalResource1Xml.pot    | 41 +++++++++++++++++
+ tests/ExternalResource/ExternalResource1Xml.xml    | 24 ++++++++++
+ tests/ExternalResource/ExternalResource2Rule.xml   |  3 ++
+ tests/ExternalResource/ExternalResource2Xml.pot    | 41 +++++++++++++++++
+ tests/ExternalResource/ExternalResource2Xml.xml    | 22 ++++++++++
+ tests/ExternalResource/ExternalResource3Rule.xml   |  3 ++
+ tests/ExternalResource/ExternalResource3Xml.pot    | 51 ++++++++++++++++++++++
+ tests/ExternalResource/ExternalResource3Xml.xml    | 28 ++++++++++++
+ tests/ExternalResource/movie-frame.gif             |  1 +
+ tests/ExternalResource/movie.avi                   |  1 +
+ tests/ExternalResource/movie.mp3                   |  1 +
+ tests/run_tests.py                                 | 18 ++++++++
+ 24 files changed, 501 insertions(+)
 
 commit bec881523df59fb1380f82ab0a789d67c34a58ed
 Author: Shaun McCance <shaunm@gnome.org>
@@ -837,13 +979,13 @@ Date:   Wed Sep 19 14:10:24 2012 -0400
     category, and retool this extension on top, so I need
     to make sure I don't break it.
 
- tests/IT-externalRef1.ll.po  |   31 +++++++++++++++++++++++++++++++
- tests/IT-externalRef1.ll.xml |   10 ++++++++++
- tests/IT-externalRef1.pot    |   31 +++++++++++++++++++++++++++++++
- tests/IT-externalRef1.txt    |    1 +
- tests/IT-externalRef1.xml    |   10 ++++++++++
- tests/run_tests.py           |    3 +++
- 6 files changed, 86 insertions(+), 0 deletions(-)
+ tests/IT-externalRef1.ll.po  | 31 +++++++++++++++++++++++++++++++
+ tests/IT-externalRef1.ll.xml | 10 ++++++++++
+ tests/IT-externalRef1.pot    | 31 +++++++++++++++++++++++++++++++
+ tests/IT-externalRef1.txt    |  1 +
+ tests/IT-externalRef1.xml    | 10 ++++++++++
+ tests/run_tests.py           |  3 +++
+ 6 files changed, 86 insertions(+)
 
 commit ce76559b75fc60ef2a6d69dc99e1781b6adcfe99
 Author: Shaun McCance <shaunm@gnome.org>
@@ -851,118 +993,63 @@ Date:   Wed Sep 12 10:21:22 2012 -0400
 
     Moving some of the tests into subdirectories
 
- tests/EX-locNote-element-1.pot                     |   18 -------
- tests/EX-locNote-element-1.xml                     |   14 ------
- tests/EX-locNote-selector-2.pot                    |   37 ---------------
- tests/EX-locNote-selector-2.xml                    |   10 ----
- tests/EX-locNotePointer-attribute-1.pot            |   23 ---------
- tests/EX-locNotePointer-attribute-1.xml            |   19 --------
- tests/EX-locNoteRef-attribute-1.pot                |   17 -------
- tests/EX-locNoteRef-attribute-1.xml                |   12 -----
- tests/EX-locNoteRefPointer-attribute-1.pot         |   23 ---------
- tests/EX-locNoteRefPointer-attribute-1.xml         |   16 -------
- tests/LocNote/EX-locNote-element-1.pot             |   18 +++++++
- tests/LocNote/EX-locNote-element-1.xml             |   14 ++++++
- tests/LocNote/EX-locNote-selector-2.pot            |   37 +++++++++++++++
- tests/LocNote/EX-locNote-selector-2.xml            |   10 ++++
- tests/LocNote/EX-locNotePointer-attribute-1.pot    |   23 +++++++++
- tests/LocNote/EX-locNotePointer-attribute-1.xml    |   19 ++++++++
- tests/LocNote/EX-locNoteRef-attribute-1.pot        |   17 +++++++
- tests/LocNote/EX-locNoteRef-attribute-1.xml        |   12 +++++
- tests/LocNote/EX-locNoteRefPointer-attribute-1.pot |   23 +++++++++
- tests/LocNote/EX-locNoteRefPointer-attribute-1.xml |   16 +++++++
- tests/LocNote/LocNote1.pot                         |   48 ++++++++++++++++++++
- tests/LocNote/LocNote1.xml                         |   21 +++++++++
- tests/LocNote/LocNote2.pot                         |   33 +++++++++++++
- tests/LocNote/LocNote2.xml                         |   15 ++++++
- tests/LocNote/LocNote2_LinkedRules.xml             |    9 ++++
- tests/LocNote/LocNote3.pot                         |   35 ++++++++++++++
- tests/LocNote/LocNote3.xml                         |   17 +++++++
- tests/LocNote/LocNote4.pot                         |   35 ++++++++++++++
- tests/LocNote/LocNote4.xml                         |    8 +++
- tests/LocNote1.pot                                 |   48 --------------------
- tests/LocNote1.xml                                 |   21 ---------
- tests/LocNote2.pot                                 |   33 -------------
- tests/LocNote2.xml                                 |   15 ------
- tests/LocNote2_LinkedRules.xml                     |    9 ----
- tests/LocNote3.pot                                 |   35 --------------
- tests/LocNote3.xml                                 |   17 -------
- tests/LocNote4.pot                                 |   35 --------------
- tests/LocNote4.xml                                 |    8 ---
- tests/Translate/Translate1.ll.po                   |   47 +++++++++++++++++++
- tests/Translate/Translate1.ll.xml                  |   39 ++++++++++++++++
- tests/Translate/Translate1.pot                     |   46 +++++++++++++++++++
- tests/Translate/Translate1.xml                     |   39 ++++++++++++++++
- tests/Translate/Translate2.ll.po                   |   21 +++++++++
- tests/Translate/Translate2.ll.xml                  |   10 ++++
- tests/Translate/Translate2.pot                     |   21 +++++++++
- tests/Translate/Translate2.xml                     |   10 ++++
- tests/Translate/Translate2_LinkedRules.xml         |    5 ++
- tests/Translate/Translate3.ll.po                   |   25 ++++++++++
- tests/Translate/Translate3.ll.wrong.po             |   25 ++++++++++
- tests/Translate/Translate3.ll.wrong.xml            |   12 +++++
- tests/Translate/Translate3.ll.xml                  |   10 ++++
- tests/Translate/Translate3.pot                     |   21 +++++++++
- tests/Translate/Translate3.xml                     |   13 +++++
- tests/Translate/Translate4.ll.po                   |   25 ++++++++++
- tests/Translate/Translate4.ll.xml                  |   10 ++++
- tests/Translate/Translate4.pot                     |   21 +++++++++
- tests/Translate/Translate4.xml                     |   10 ++++
- tests/Translate/Translate5.ll.po                   |   25 ++++++++++
- tests/Translate/Translate5.ll.xml                  |   19 ++++++++
- tests/Translate/Translate5.pot                     |   21 +++++++++
- tests/Translate/Translate5.xml                     |   19 ++++++++
- tests/Translate/Translate6.ll.po                   |   40 ++++++++++++++++
- tests/Translate/Translate6.ll.xml                  |   19 ++++++++
- tests/Translate/Translate6.pot                     |   36 +++++++++++++++
- tests/Translate/Translate6.xml                     |   19 ++++++++
- tests/Translate/Translate7.ll.po                   |   21 +++++++++
- tests/Translate/Translate7.ll.xml                  |   29 ++++++++++++
- tests/Translate/Translate7.pot                     |   21 +++++++++
- tests/Translate/Translate7.xml                     |   28 +++++++++++
- tests/Translate/TranslateGlobal.ll.po              |   26 +++++++++++
- tests/Translate/TranslateGlobal.ll.xml             |   13 +++++
- tests/Translate/TranslateGlobal.pot                |   26 +++++++++++
- tests/Translate/TranslateGlobal.xml                |   13 +++++
- tests/Translate/TranslateGlobal_LinkedRules.xml    |    6 +++
- tests/Translate1.ll.po                             |   47 -------------------
- tests/Translate1.ll.xml                            |   39 ----------------
- tests/Translate1.pot                               |   46 -------------------
- tests/Translate1.xml                               |   39 ----------------
- tests/Translate2.ll.po                             |   21 ---------
- tests/Translate2.ll.xml                            |   10 ----
- tests/Translate2.pot                               |   21 ---------
- tests/Translate2.xml                               |   10 ----
- tests/Translate2_LinkedRules.xml                   |    5 --
- tests/Translate3.ll.po                             |   25 ----------
- tests/Translate3.ll.wrong.po                       |   25 ----------
- tests/Translate3.ll.wrong.xml                      |   12 -----
- tests/Translate3.ll.xml                            |   10 ----
- tests/Translate3.pot                               |   21 ---------
- tests/Translate3.xml                               |   13 -----
- tests/Translate4.ll.po                             |   25 ----------
- tests/Translate4.ll.xml                            |   10 ----
- tests/Translate4.pot                               |   21 ---------
- tests/Translate4.xml                               |   10 ----
- tests/Translate5.ll.po                             |   25 ----------
- tests/Translate5.ll.xml                            |   19 --------
- tests/Translate5.pot                               |   21 ---------
- tests/Translate5.xml                               |   19 --------
- tests/Translate6.ll.po                             |   40 ----------------
- tests/Translate6.ll.xml                            |   19 --------
- tests/Translate6.pot                               |   36 ---------------
- tests/Translate6.xml                               |   19 --------
- tests/Translate7.ll.po                             |   21 ---------
- tests/Translate7.ll.xml                            |   29 ------------
- tests/Translate7.pot                               |   21 ---------
- tests/Translate7.xml                               |   28 -----------
- tests/TranslateGlobal.ll.po                        |   26 -----------
- tests/TranslateGlobal.ll.xml                       |   13 -----
- tests/TranslateGlobal.pot                          |   26 -----------
- tests/TranslateGlobal.xml                          |   13 -----
- tests/TranslateGlobal_LinkedRules.xml              |    6 ---
- tests/run_tests.py                                 |   44 +++++++++---------
- 111 files changed, 1223 insertions(+), 1223 deletions(-)
+ tests/{ => LocNote}/EX-locNote-element-1.pot       |  2 +-
+ tests/{ => LocNote}/EX-locNote-element-1.xml       |  0
+ tests/{ => LocNote}/EX-locNote-selector-2.pot      |  6 +--
+ tests/{ => LocNote}/EX-locNote-selector-2.xml      |  0
+ .../EX-locNotePointer-attribute-1.pot              |  4 +-
+ .../EX-locNotePointer-attribute-1.xml              |  0
+ tests/{ => LocNote}/EX-locNoteRef-attribute-1.pot  |  2 +-
+ tests/{ => LocNote}/EX-locNoteRef-attribute-1.xml  |  0
+ .../EX-locNoteRefPointer-attribute-1.pot           |  4 +-
+ .../EX-locNoteRefPointer-attribute-1.xml           |  0
+ tests/{ => LocNote}/LocNote1.pot                   | 14 +++----
+ tests/{ => LocNote}/LocNote1.xml                   |  0
+ tests/{ => LocNote}/LocNote2.pot                   |  8 ++--
+ tests/{ => LocNote}/LocNote2.xml                   |  0
+ tests/{ => LocNote}/LocNote2_LinkedRules.xml       |  0
+ tests/{ => LocNote}/LocNote3.pot                   |  8 ++--
+ tests/{ => LocNote}/LocNote3.xml                   |  0
+ tests/{ => LocNote}/LocNote4.pot                   |  8 ++--
+ tests/{ => LocNote}/LocNote4.xml                   |  0
+ tests/{ => Translate}/Translate1.ll.po             | 14 +++----
+ tests/{ => Translate}/Translate1.ll.xml            |  0
+ tests/{ => Translate}/Translate1.pot               | 14 +++----
+ tests/{ => Translate}/Translate1.xml               |  0
+ tests/{ => Translate}/Translate2.ll.po             |  4 +-
+ tests/{ => Translate}/Translate2.ll.xml            |  0
+ tests/{ => Translate}/Translate2.pot               |  4 +-
+ tests/{ => Translate}/Translate2.xml               |  0
+ tests/{ => Translate}/Translate2_LinkedRules.xml   |  0
+ tests/{ => Translate}/Translate3.ll.po             |  4 +-
+ tests/{ => Translate}/Translate3.ll.wrong.po       |  4 +-
+ tests/{ => Translate}/Translate3.ll.wrong.xml      |  0
+ tests/{ => Translate}/Translate3.ll.xml            |  0
+ tests/{ => Translate}/Translate3.pot               |  4 +-
+ tests/{ => Translate}/Translate3.xml               |  0
+ tests/{ => Translate}/Translate4.ll.po             |  4 +-
+ tests/{ => Translate}/Translate4.ll.xml            |  0
+ tests/{ => Translate}/Translate4.pot               |  4 +-
+ tests/{ => Translate}/Translate4.xml               |  0
+ tests/{ => Translate}/Translate5.ll.po             |  4 +-
+ tests/{ => Translate}/Translate5.ll.xml            |  0
+ tests/{ => Translate}/Translate5.pot               |  4 +-
+ tests/{ => Translate}/Translate5.xml               |  0
+ tests/{ => Translate}/Translate6.ll.po             | 10 ++---
+ tests/{ => Translate}/Translate6.ll.xml            |  0
+ tests/{ => Translate}/Translate6.pot               | 10 ++---
+ tests/{ => Translate}/Translate6.xml               |  0
+ tests/{ => Translate}/Translate7.ll.po             |  4 +-
+ tests/{ => Translate}/Translate7.ll.xml            |  0
+ tests/{ => Translate}/Translate7.pot               |  4 +-
+ tests/{ => Translate}/Translate7.xml               |  0
+ tests/{ => Translate}/TranslateGlobal.ll.po        |  6 +--
+ tests/{ => Translate}/TranslateGlobal.ll.xml       |  0
+ tests/{ => Translate}/TranslateGlobal.pot          |  6 +--
+ tests/{ => Translate}/TranslateGlobal.xml          |  0
+ .../TranslateGlobal_LinkedRules.xml                |  0
+ tests/run_tests.py                                 | 44 +++++++++++-----------
+ 56 files changed, 102 insertions(+), 102 deletions(-)
 
 commit 30c0c2c8f86119dc861f5ff8036b79e52eed0292
 Author: Shaun McCance <shaunm@gnome.org>
@@ -970,46 +1057,46 @@ Date:   Wed Sep 12 09:07:23 2012 -0400
 
     Adding more Locale Filter tests
 
- tests/LocaleFilter/Locale2Xml.fr_CA.po   |   23 +++++++++++
- tests/LocaleFilter/Locale2Xml.fr_CA.xml  |    8 ++++
- tests/LocaleFilter/Locale2Xml.fr_CH.po   |   23 +++++++++++
- tests/LocaleFilter/Locale2Xml.fr_CH.xml  |    8 ++++
- tests/LocaleFilter/Locale2Xml.fr_FR.po   |   23 +++++++++++
- tests/LocaleFilter/Locale2Xml.fr_FR.xml  |    5 ++
- tests/LocaleFilter/Locale2Xml.joined.xml |   16 +++++++
- tests/LocaleFilter/Locale2Xml.pot        |   23 +++++++++++
- tests/LocaleFilter/Locale2Xml.xml        |   14 ++++++
- tests/LocaleFilter/Locale3Rule.xml       |    5 ++
- tests/LocaleFilter/Locale3Xml.fr_CA.po   |   23 +++++++++++
- tests/LocaleFilter/Locale3Xml.fr_CA.xml  |    9 ++++
- tests/LocaleFilter/Locale3Xml.fr_CH.po   |   23 +++++++++++
- tests/LocaleFilter/Locale3Xml.fr_CH.xml  |    9 ++++
- tests/LocaleFilter/Locale3Xml.fr_FR.po   |   23 +++++++++++
- tests/LocaleFilter/Locale3Xml.fr_FR.xml  |    6 +++
- tests/LocaleFilter/Locale3Xml.joined.xml |   17 ++++++++
- tests/LocaleFilter/Locale3Xml.pot        |   23 +++++++++++
- tests/LocaleFilter/Locale3Xml.xml        |   16 +++++++
- tests/LocaleFilter/Locale4Rule.xml       |    3 +
- tests/LocaleFilter/Locale4Xml.fr_CA.po   |   23 +++++++++++
- tests/LocaleFilter/Locale4Xml.fr_CA.xml  |   12 ++++++
- tests/LocaleFilter/Locale4Xml.fr_CH.po   |   23 +++++++++++
- tests/LocaleFilter/Locale4Xml.fr_CH.xml  |   12 ++++++
- tests/LocaleFilter/Locale4Xml.fr_FR.po   |   23 +++++++++++
- tests/LocaleFilter/Locale4Xml.fr_FR.xml  |    9 ++++
- tests/LocaleFilter/Locale4Xml.joined.xml |   17 ++++++++
- tests/LocaleFilter/Locale4Xml.pot        |   23 +++++++++++
- tests/LocaleFilter/Locale4Xml.xml        |   16 +++++++
- tests/LocaleFilter/Locale5Xml.fr_CA.po   |   23 +++++++++++
- tests/LocaleFilter/Locale5Xml.fr_CA.xml  |    8 ++++
- tests/LocaleFilter/Locale5Xml.fr_CH.po   |   23 +++++++++++
- tests/LocaleFilter/Locale5Xml.fr_CH.xml  |    8 ++++
- tests/LocaleFilter/Locale5Xml.fr_FR.po   |   23 +++++++++++
- tests/LocaleFilter/Locale5Xml.fr_FR.xml  |    5 ++
- tests/LocaleFilter/Locale5Xml.joined.xml |   16 +++++++
- tests/LocaleFilter/Locale5Xml.pot        |   23 +++++++++++
- tests/LocaleFilter/Locale5Xml.xml        |   13 ++++++
- tests/run_tests.py                       |   64 ++++++++++++++++++++++++++++++
- 39 files changed, 664 insertions(+), 0 deletions(-)
+ tests/LocaleFilter/Locale2Xml.fr_CA.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale2Xml.fr_CA.xml  |  8 ++++
+ tests/LocaleFilter/Locale2Xml.fr_CH.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale2Xml.fr_CH.xml  |  8 ++++
+ tests/LocaleFilter/Locale2Xml.fr_FR.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale2Xml.fr_FR.xml  |  5 +++
+ tests/LocaleFilter/Locale2Xml.joined.xml | 16 ++++++++
+ tests/LocaleFilter/Locale2Xml.pot        | 23 ++++++++++++
+ tests/LocaleFilter/Locale2Xml.xml        | 14 +++++++
+ tests/LocaleFilter/Locale3Rule.xml       |  5 +++
+ tests/LocaleFilter/Locale3Xml.fr_CA.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale3Xml.fr_CA.xml  |  9 +++++
+ tests/LocaleFilter/Locale3Xml.fr_CH.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale3Xml.fr_CH.xml  |  9 +++++
+ tests/LocaleFilter/Locale3Xml.fr_FR.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale3Xml.fr_FR.xml  |  6 +++
+ tests/LocaleFilter/Locale3Xml.joined.xml | 17 +++++++++
+ tests/LocaleFilter/Locale3Xml.pot        | 23 ++++++++++++
+ tests/LocaleFilter/Locale3Xml.xml        | 16 ++++++++
+ tests/LocaleFilter/Locale4Rule.xml       |  3 ++
+ tests/LocaleFilter/Locale4Xml.fr_CA.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale4Xml.fr_CA.xml  | 12 ++++++
+ tests/LocaleFilter/Locale4Xml.fr_CH.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale4Xml.fr_CH.xml  | 12 ++++++
+ tests/LocaleFilter/Locale4Xml.fr_FR.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale4Xml.fr_FR.xml  |  9 +++++
+ tests/LocaleFilter/Locale4Xml.joined.xml | 17 +++++++++
+ tests/LocaleFilter/Locale4Xml.pot        | 23 ++++++++++++
+ tests/LocaleFilter/Locale4Xml.xml        | 16 ++++++++
+ tests/LocaleFilter/Locale5Xml.fr_CA.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale5Xml.fr_CA.xml  |  8 ++++
+ tests/LocaleFilter/Locale5Xml.fr_CH.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale5Xml.fr_CH.xml  |  8 ++++
+ tests/LocaleFilter/Locale5Xml.fr_FR.po   | 23 ++++++++++++
+ tests/LocaleFilter/Locale5Xml.fr_FR.xml  |  5 +++
+ tests/LocaleFilter/Locale5Xml.joined.xml | 16 ++++++++
+ tests/LocaleFilter/Locale5Xml.pot        | 23 ++++++++++++
+ tests/LocaleFilter/Locale5Xml.xml        | 13 +++++++
+ tests/run_tests.py                       | 64 ++++++++++++++++++++++++++++++++
+ 39 files changed, 664 insertions(+)
 
 commit 429131c2ffe3fd69d3f29a66ae7eb9ea127b4e72
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1017,8 +1104,8 @@ Date:   Tue Sep 11 22:57:18 2012 -0400
 
     Sort attribute names in test output
 
- itstool.in |    4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
+ itstool.in | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
 commit 13e8e0c2ab1fb8c793e86e35fa12cbd7694f7f63
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1029,9 +1116,8 @@ Date:   Tue Sep 11 16:48:44 2012 -0400
     I changed the naming convention to make it easier
     to reuse other test input files to also test joins.
 
- tests/IT-join-1.joined.xml |   36 ++++++++++++++++++++++++++++++++++++
- tests/IT-join-1.ll.xml     |   36 ------------------------------------
- 2 files changed, 36 insertions(+), 36 deletions(-)
+ tests/{IT-join-1.ll.xml => IT-join-1.joined.xml} | 0
+ 1 file changed, 0 insertions(+), 0 deletions(-)
 
 commit 2d37295f5ccdafc3372ea0e576400524fc688e45
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1039,14 +1125,14 @@ Date:   Tue Sep 11 16:47:19 2012 -0400
 
     Updating test files for --no-builtins
 
- tests/IT-locNote-inline.pot    |    5 +++++
- tests/IT-locNote-multiples.pot |    5 +++++
- tests/IT-placeholder-1.ll.xml  |    2 +-
- tests/LocNote1.pot             |   20 ++++++++++++++++++++
- tests/LocNote2.pot             |    5 +++++
- tests/Translate3.ll.wrong.xml  |    2 +-
- tests/Translate3.ll.xml        |    2 +-
- tests/Translate4.ll.xml        |    2 +-
+ tests/IT-locNote-inline.pot    |  5 +++++
+ tests/IT-locNote-multiples.pot |  5 +++++
+ tests/IT-placeholder-1.ll.xml  |  2 +-
+ tests/LocNote1.pot             | 20 ++++++++++++++++++++
+ tests/LocNote2.pot             |  5 +++++
+ tests/Translate3.ll.wrong.xml  |  2 +-
+ tests/Translate3.ll.xml        |  2 +-
+ tests/Translate4.ll.xml        |  2 +-
  8 files changed, 39 insertions(+), 4 deletions(-)
 
 commit 0e6a42ffd5fe7cdac8197f22b89e57fe55926687
@@ -1055,17 +1141,17 @@ Date:   Tue Sep 11 16:45:55 2012 -0400
 
     First pass at implementing Locale Filter
 
- itstool.in                               |  161 +++++++++++++++++++++++-------
- tests/LocaleFilter/Locale1Xml.fr_CA.po   |   23 ++++
- tests/LocaleFilter/Locale1Xml.fr_CA.xml  |   13 +++
- tests/LocaleFilter/Locale1Xml.fr_CH.po   |   23 ++++
- tests/LocaleFilter/Locale1Xml.fr_CH.xml  |   13 +++
- tests/LocaleFilter/Locale1Xml.fr_FR.po   |   23 ++++
- tests/LocaleFilter/Locale1Xml.fr_FR.xml  |   10 ++
- tests/LocaleFilter/Locale1Xml.joined.xml |   21 ++++
- tests/LocaleFilter/Locale1Xml.pot        |   23 ++++
- tests/LocaleFilter/Locale1Xml.xml        |   20 ++++
- tests/run_tests.py                       |   75 ++++++++------
+ itstool.in                               | 161 ++++++++++++++++++++++++-------
+ tests/LocaleFilter/Locale1Xml.fr_CA.po   |  23 +++++
+ tests/LocaleFilter/Locale1Xml.fr_CA.xml  |  13 +++
+ tests/LocaleFilter/Locale1Xml.fr_CH.po   |  23 +++++
+ tests/LocaleFilter/Locale1Xml.fr_CH.xml  |  13 +++
+ tests/LocaleFilter/Locale1Xml.fr_FR.po   |  23 +++++
+ tests/LocaleFilter/Locale1Xml.fr_FR.xml  |  10 ++
+ tests/LocaleFilter/Locale1Xml.joined.xml |  21 ++++
+ tests/LocaleFilter/Locale1Xml.pot        |  23 +++++
+ tests/LocaleFilter/Locale1Xml.xml        |  20 ++++
+ tests/run_tests.py                       |  75 ++++++++------
  11 files changed, 338 insertions(+), 67 deletions(-)
 
 commit cc8084a1596e61363585dea0c13fbe94a4266a1f
@@ -1074,8 +1160,8 @@ Date:   Mon Sep 10 12:26:25 2012 -0400
 
     Implemented test suite output for withinText
 
- itstool.in |   27 +++++++++++++++------------
- 1 files changed, 15 insertions(+), 12 deletions(-)
+ itstool.in | 27 +++++++++++++++------------
+ 1 file changed, 15 insertions(+), 12 deletions(-)
 
 commit 7c8434af35f907f5c97741d1d22d8157d51a6a5f
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1083,8 +1169,8 @@ Date:   Mon Sep 10 11:38:00 2012 -0400
 
     Adding test suite output for its:translate
 
- itstool.in |  110 ++++++++++++++++++++++++++++++++++++++++++------------------
- 1 files changed, 77 insertions(+), 33 deletions(-)
+ itstool.in | 110 ++++++++++++++++++++++++++++++++++++++++++-------------------
+ 1 file changed, 77 insertions(+), 33 deletions(-)
 
 commit 231548b2539e281a3e68b08a052cb4b03c5368a0
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1092,17 +1178,17 @@ Date:   Sat Sep 8 17:36:43 2012 -0400
 
     Implemented ITS 2.0 Preserve Space data category
 
- itstool.in                      |   20 +++++++++++++-------
- tests/preservespace1xml.pot     |   23 +++++++++++++++++++++++
- tests/preservespace1xml.xml     |   15 +++++++++++++++
- tests/preservespace2xml.pot     |   23 +++++++++++++++++++++++
- tests/preservespace2xml.xml     |   10 ++++++++++
- tests/preservespace3XmlRule.xml |    3 +++
- tests/preservespace3xml.pot     |   23 +++++++++++++++++++++++
- tests/preservespace3xml.xml     |   12 ++++++++++++
- tests/preservespace4xml.pot     |   23 +++++++++++++++++++++++
- tests/preservespace4xml.xml     |   10 ++++++++++
- tests/run_tests.py              |   12 ++++++++++++
+ itstool.in                      | 20 +++++++++++++-------
+ tests/preservespace1xml.pot     | 23 +++++++++++++++++++++++
+ tests/preservespace1xml.xml     | 15 +++++++++++++++
+ tests/preservespace2xml.pot     | 23 +++++++++++++++++++++++
+ tests/preservespace2xml.xml     | 10 ++++++++++
+ tests/preservespace3XmlRule.xml |  3 +++
+ tests/preservespace3xml.pot     | 23 +++++++++++++++++++++++
+ tests/preservespace3xml.xml     | 12 ++++++++++++
+ tests/preservespace4xml.pot     | 23 +++++++++++++++++++++++
+ tests/preservespace4xml.xml     | 10 ++++++++++
+ tests/run_tests.py              | 12 ++++++++++++
  11 files changed, 167 insertions(+), 7 deletions(-)
 
 commit 34cc26b03424cd3ac72c041c8b576000ce2011d2
@@ -1125,12 +1211,12 @@ Date:   Wed Aug 29 10:21:37 2012 -0400
     
     Signed-off-by: Galen Charlton <gmc@esilibrary.com>
 
- itstool.in                         |   13 ++++++++++---
- tests/IT-uses-external-dtds.ll.po  |   21 +++++++++++++++++++++
- tests/IT-uses-external-dtds.ll.xml |    7 +++++++
- tests/IT-uses-external-dtds.pot    |   21 +++++++++++++++++++++
- tests/IT-uses-external-dtds.xml    |    7 +++++++
- tests/run_tests.py                 |   19 ++++++++++++++++---
+ itstool.in                         | 13 ++++++++++---
+ tests/IT-uses-external-dtds.ll.po  | 21 +++++++++++++++++++++
+ tests/IT-uses-external-dtds.ll.xml |  7 +++++++
+ tests/IT-uses-external-dtds.pot    | 21 +++++++++++++++++++++
+ tests/IT-uses-external-dtds.xml    |  7 +++++++
+ tests/run_tests.py                 | 19 ++++++++++++++++---
  6 files changed, 82 insertions(+), 6 deletions(-)
 
 commit 7ee29a46d229bde60c86703730b24d5ac49a1e75
@@ -1139,9 +1225,9 @@ Date:   Sun Jun 24 10:30:01 2012 -0400
 
     Version 1.2.0
 
- NEWS         |    9 +++++++++
- configure.ac |    2 +-
- 2 files changed, 10 insertions(+), 1 deletions(-)
+ NEWS         | 9 +++++++++
+ configure.ac | 2 +-
+ 2 files changed, 10 insertions(+), 1 deletion(-)
 
 commit 6fce21cd7b4417d8ea8cff3a8f2c79063d5353a3
 Merge: f951a0f 470b52a
@@ -1156,8 +1242,8 @@ Date:   Sat Jun 23 11:17:25 2012 -0400
 
     Always use nsProp(), not prop()
 
- itstool.in |   94 ++++++++++++++++++++++++++++++------------------------------
- 1 files changed, 47 insertions(+), 47 deletions(-)
+ itstool.in | 94 +++++++++++++++++++++++++++++++-------------------------------
+ 1 file changed, 47 insertions(+), 47 deletions(-)
 
 commit 5c47aea87ecd67b69cc7596a61db0ff950e71063
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1165,12 +1251,12 @@ Date:   Wed May 16 11:12:19 2012 -0400
 
     Be much more strict (and correct) about the version attribute
 
- its/docbook.its |    2 +-
- its/its.its     |    2 +-
- its/mallard.its |    2 +-
- its/ttml.its    |    2 +-
- its/xhtml.its   |    2 +-
- itstool.in      |   38 ++++++++++++++++++++++++++++++++++++--
+ its/docbook.its |  2 +-
+ its/its.its     |  2 +-
+ its/mallard.its |  2 +-
+ its/ttml.its    |  2 +-
+ its/xhtml.its   |  2 +-
+ itstool.in      | 38 ++++++++++++++++++++++++++++++++++++--
  6 files changed, 41 insertions(+), 7 deletions(-)
 
 commit f53cb2b28fafaf6488f283020bc4de6c86f75c0a
@@ -1182,8 +1268,8 @@ Date:   Sat May 12 12:21:02 2012 -0400
     Otherwise you have no idea which translation is causing problems
     when using join mode.
 
- itstool.in |   13 +++++++------
- 1 files changed, 7 insertions(+), 6 deletions(-)
+ itstool.in | 13 +++++++------
+ 1 file changed, 7 insertions(+), 6 deletions(-)
 
 commit a3b94bef85d9a96aec2656987d0910cc928573dc
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1191,8 +1277,8 @@ Date:   Fri May 11 15:13:46 2012 -0400
 
     Try to maintain indentation in join mode
 
- itstool.in             |    7 +++++++
- tests/IT-join-1.ll.xml |   30 ++++++++++++++++++++++++------
+ itstool.in             |  7 +++++++
+ tests/IT-join-1.ll.xml | 30 ++++++++++++++++++++++++------
  2 files changed, 31 insertions(+), 6 deletions(-)
 
 commit 4690db4df453dd79cc8df1bdf0ba49475fb6c83c
@@ -1201,14 +1287,14 @@ Date:   Fri May 11 13:06:22 2012 -0400
 
     tests: Adding regression test for join mode
 
- tests/IT-join-1.cs.po  |   46 ++++++++++++++++++++++++++++++++++++++++++++++
- tests/IT-join-1.de.po  |   46 ++++++++++++++++++++++++++++++++++++++++++++++
- tests/IT-join-1.fr.po  |   46 ++++++++++++++++++++++++++++++++++++++++++++++
- tests/IT-join-1.ll.xml |   18 ++++++++++++++++++
- tests/IT-join-1.pot    |   46 ++++++++++++++++++++++++++++++++++++++++++++++
- tests/IT-join-1.xml    |   19 +++++++++++++++++++
- tests/run_tests.py     |   27 +++++++++++++++++++++++++++
- 7 files changed, 248 insertions(+), 0 deletions(-)
+ tests/IT-join-1.cs.po  | 46 ++++++++++++++++++++++++++++++++++++++++++++++
+ tests/IT-join-1.de.po  | 46 ++++++++++++++++++++++++++++++++++++++++++++++
+ tests/IT-join-1.fr.po  | 46 ++++++++++++++++++++++++++++++++++++++++++++++
+ tests/IT-join-1.ll.xml | 18 ++++++++++++++++++
+ tests/IT-join-1.pot    | 46 ++++++++++++++++++++++++++++++++++++++++++++++
+ tests/IT-join-1.xml    | 19 +++++++++++++++++++
+ tests/run_tests.py     | 27 +++++++++++++++++++++++++++
+ 7 files changed, 248 insertions(+)
 
 commit 124f58219a33677f010f4e56fe09d0fb389d2b52
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1216,8 +1302,8 @@ Date:   Tue May 8 12:55:29 2012 -0400
 
     Adding new join mode for multi-lingual XML files
 
- itstool.in |  106 +++++++++++++++++++++++++++++++++++++++++++++++++++--------
- 1 files changed, 91 insertions(+), 15 deletions(-)
+ itstool.in | 106 ++++++++++++++++++++++++++++++++++++++++++++++++++++---------
+ 1 file changed, 91 insertions(+), 15 deletions(-)
 
 commit 470b52ad6d4f55b32a56d95671d608c483dbeae7
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1225,9 +1311,9 @@ Date:   Mon May 7 16:40:21 2012 -0400
 
     Version 1.1.3
 
- NEWS         |    6 ++++++
- configure.ac |    2 +-
- 2 files changed, 7 insertions(+), 1 deletions(-)
+ NEWS         | 6 ++++++
+ configure.ac | 2 +-
+ 2 files changed, 7 insertions(+), 1 deletion(-)
 
 commit 7daf5389b1b6f2d82e86d2a9aa8289f4c1aa5d12
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1238,10 +1324,10 @@ Date:   Sun May 6 20:10:03 2012 -0400
     Already had these XML files from W3C, but I didn't have POT files
     to test them against
 
- tests/EX-locNote-element-1.pot      |   18 ++++++++++++++++++
- tests/EX-locNoteRef-attribute-1.pot |   17 +++++++++++++++++
- tests/run_tests.py                  |    6 ++++++
- 3 files changed, 41 insertions(+), 0 deletions(-)
+ tests/EX-locNote-element-1.pot      | 18 ++++++++++++++++++
+ tests/EX-locNoteRef-attribute-1.pot | 17 +++++++++++++++++
+ tests/run_tests.py                  |  6 ++++++
+ 3 files changed, 41 insertions(+)
 
 commit 2548f4006f064caf2d6ecd0402f723f650b135d6
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1249,21 +1335,21 @@ Date:   Sun May 6 20:05:53 2012 -0400
 
     tests: msgmerge po files to have new syntax from pot files
 
- tests/IT-attributes-1.ll.po  |   10 ++++---
- tests/IT-context-1.ll.po     |   19 ++++++++-----
- tests/IT-dropRule-1.ll.po    |    7 +++--
- tests/IT-placeholder-1.ll.po |   17 ++++++++----
- tests/Translate1.ll.po       |   28 +++++++++++++-------
- tests/Translate2.ll.po       |   10 ++++---
- tests/Translate3.ll.po       |   18 ++++++++----
- tests/Translate3.ll.wrong.po |   18 ++++++++----
- tests/Translate4.ll.po       |   18 ++++++++----
- tests/Translate5.ll.po       |   18 ++++++++----
- tests/Translate6.ll.po       |   27 +++++++++++++------
- tests/Translate7.ll.po       |   10 ++++---
- tests/TranslateGlobal.ll.po  |   13 ++++++---
- tests/WithinText1.ll.po      |   22 ++++++++++------
- tests/WithinText2.ll.po      |   58 +++++++++++++++++++++++++++++-------------
+ tests/IT-attributes-1.ll.po  | 10 +++++---
+ tests/IT-context-1.ll.po     | 19 +++++++++------
+ tests/IT-dropRule-1.ll.po    |  7 +++---
+ tests/IT-placeholder-1.ll.po | 17 ++++++++-----
+ tests/Translate1.ll.po       | 28 +++++++++++++--------
+ tests/Translate2.ll.po       | 10 +++++---
+ tests/Translate3.ll.po       | 18 +++++++++-----
+ tests/Translate3.ll.wrong.po | 18 +++++++++-----
+ tests/Translate4.ll.po       | 18 +++++++++-----
+ tests/Translate5.ll.po       | 18 +++++++++-----
+ tests/Translate6.ll.po       | 27 ++++++++++++++-------
+ tests/Translate7.ll.po       | 10 +++++---
+ tests/TranslateGlobal.ll.po  | 13 ++++++----
+ tests/WithinText1.ll.po      | 22 +++++++++++------
+ tests/WithinText2.ll.po      | 58 ++++++++++++++++++++++++++++++--------------
  15 files changed, 191 insertions(+), 102 deletions(-)
 
 commit 2c153716eaf5650077741a46ae4bc91365c08e02
@@ -1272,42 +1358,25 @@ Date:   Sun May 6 13:24:50 2012 -0400
 
     Renamed itstool-specific tests to use IT- prefix
 
- tests/Attributes1.ll.po       |   19 -------------------
- tests/Attributes1.ll.xml      |   10 ----------
- tests/Attributes1.pot         |   21 ---------------------
- tests/Attributes1.xml         |   10 ----------
- tests/Context.ll.po           |   35 -----------------------------------
- tests/Context.ll.xml          |   15 ---------------
- tests/Context.pot             |   40 ----------------------------------------
- tests/Context.xml             |   14 --------------
- tests/Droprule.ll.po          |   15 ---------------
- tests/Droprule.ll.xml         |   11 -----------
- tests/Droprule.pot            |   16 ----------------
- tests/Droprule.xml            |   12 ------------
- tests/IT-attributes-1.ll.po   |   19 +++++++++++++++++++
- tests/IT-attributes-1.ll.xml  |   10 ++++++++++
- tests/IT-attributes-1.pot     |   21 +++++++++++++++++++++
- tests/IT-attributes-1.xml     |   10 ++++++++++
- tests/IT-context-1.ll.po      |   35 +++++++++++++++++++++++++++++++++++
- tests/IT-context-1.ll.xml     |   15 +++++++++++++++
- tests/IT-context-1.pot        |   40 ++++++++++++++++++++++++++++++++++++++++
- tests/IT-context-1.xml        |   14 ++++++++++++++
- tests/IT-dropRule-1.ll.po     |   15 +++++++++++++++
- tests/IT-dropRule-1.ll.xml    |   11 +++++++++++
- tests/IT-dropRule-1.pot       |   16 ++++++++++++++++
- tests/IT-dropRule-1.xml       |   12 ++++++++++++
- tests/IT-malformed.xml        |    6 ++++++
- tests/IT-placeholder-1.ll.po  |   19 +++++++++++++++++++
- tests/IT-placeholder-1.ll.xml |    6 ++++++
- tests/IT-placeholder-1.pot    |   21 +++++++++++++++++++++
- tests/IT-placeholder-1.xml    |    5 +++++
- tests/Malformed.xml           |    6 ------
- tests/Placeholder.ll.po       |   19 -------------------
- tests/Placeholder.ll.xml      |    6 ------
- tests/Placeholder.pot         |   21 ---------------------
- tests/Placeholder.xml         |    5 -----
- tests/run_tests.py            |   20 ++++++++++----------
- 35 files changed, 285 insertions(+), 285 deletions(-)
+ tests/{Attributes1.ll.po => IT-attributes-1.ll.po}   |  4 ++--
+ tests/{Attributes1.ll.xml => IT-attributes-1.ll.xml} |  0
+ tests/{Attributes1.pot => IT-attributes-1.pot}       |  4 ++--
+ tests/{Attributes1.xml => IT-attributes-1.xml}       |  0
+ tests/{Context.ll.po => IT-context-1.ll.po}          |  0
+ tests/{Context.ll.xml => IT-context-1.ll.xml}        |  0
+ tests/{Context.pot => IT-context-1.pot}              | 10 +++++-----
+ tests/{Context.xml => IT-context-1.xml}              |  0
+ tests/{Droprule.ll.po => IT-dropRule-1.ll.po}        |  2 +-
+ tests/{Droprule.ll.xml => IT-dropRule-1.ll.xml}      |  0
+ tests/{Droprule.pot => IT-dropRule-1.pot}            |  2 +-
+ tests/{Droprule.xml => IT-dropRule-1.xml}            |  0
+ tests/{Malformed.xml => IT-malformed.xml}            |  0
+ tests/{Placeholder.ll.po => IT-placeholder-1.ll.po}  |  0
+ .../{Placeholder.ll.xml => IT-placeholder-1.ll.xml}  |  0
+ tests/{Placeholder.pot => IT-placeholder-1.pot}      |  4 ++--
+ tests/{Placeholder.xml => IT-placeholder-1.xml}      |  0
+ tests/run_tests.py                                   | 20 ++++++++++----------
+ 18 files changed, 23 insertions(+), 23 deletions(-)
 
 commit d67907f3269ab5bbebae9267ec43df023591c520
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1315,8 +1384,8 @@ Date:   Sat May 5 21:49:54 2012 -0400
 
     tests: Changed test names to match file names
 
- tests/run_tests.py |   52 ++++++++++++++++++++++++++--------------------------
- 1 files changed, 26 insertions(+), 26 deletions(-)
+ tests/run_tests.py | 52 ++++++++++++++++++++++++++--------------------------
+ 1 file changed, 26 insertions(+), 26 deletions(-)
 
 commit 9c5e6b9d2d90c9f5fc4693acd727f45d4512e687
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1331,33 +1400,33 @@ Date:   Sat May 5 20:07:00 2012 -0400
     I also moved path markers from the file context comment, because
     it's wrong and messes up some tools.
 
- itstool.in                                 |  167 ++++++++++++++++++++--------
- tests/Attributes1.pot                      |    8 +-
- tests/Context.pot                          |   17 ++-
- tests/Droprule.pot                         |    5 +-
- tests/EX-locNote-selector-2.pot            |   37 ++++++
- tests/EX-locNotePointer-attribute-1.pot    |    8 +-
- tests/EX-locNoteRefPointer-attribute-1.pot |   12 +-
- tests/IT-locNote-inline.pot                |   20 ++++
- tests/IT-locNote-inline.xml                |   15 +++
- tests/IT-locNote-multiples.pot             |   28 +++++
- tests/IT-locNote-multiples.xml             |   19 +++
- tests/LocNote1.pot                         |   11 +-
- tests/LocNote2.pot                         |   11 +-
- tests/LocNote3.pot                         |   18 ++-
- tests/LocNote4.pot                         |   19 ++-
- tests/Placeholder.pot                      |   21 ++++
- tests/Translate1.pot                       |   23 +++--
- tests/Translate2.pot                       |    8 +-
- tests/Translate3.pot                       |   21 ++++
- tests/Translate4.pot                       |   21 ++++
- tests/Translate5.pot                       |    8 +-
- tests/Translate6.pot                       |   36 ++++++
- tests/Translate7.pot                       |    8 +-
- tests/TranslateGlobal.pot                  |   11 +-
- tests/WithinText1.pot                      |   11 +-
- tests/WithinText2.pot                      |   32 ++++--
- tests/run_tests.py                         |    9 ++-
+ itstool.in                                 | 167 +++++++++++++++++++++--------
+ tests/Attributes1.pot                      |   8 +-
+ tests/Context.pot                          |  17 +--
+ tests/Droprule.pot                         |   5 +-
+ tests/EX-locNote-selector-2.pot            |  37 +++++++
+ tests/EX-locNotePointer-attribute-1.pot    |   8 +-
+ tests/EX-locNoteRefPointer-attribute-1.pot |  12 ++-
+ tests/IT-locNote-inline.pot                |  20 ++++
+ tests/IT-locNote-inline.xml                |  15 +++
+ tests/IT-locNote-multiples.pot             |  28 +++++
+ tests/IT-locNote-multiples.xml             |  19 ++++
+ tests/LocNote1.pot                         |  11 +-
+ tests/LocNote2.pot                         |  11 +-
+ tests/LocNote3.pot                         |  18 ++--
+ tests/LocNote4.pot                         |  19 ++--
+ tests/Placeholder.pot                      |  21 ++++
+ tests/Translate1.pot                       |  23 ++--
+ tests/Translate2.pot                       |   8 +-
+ tests/Translate3.pot                       |  21 ++++
+ tests/Translate4.pot                       |  21 ++++
+ tests/Translate5.pot                       |   8 +-
+ tests/Translate6.pot                       |  36 +++++++
+ tests/Translate7.pot                       |   8 +-
+ tests/TranslateGlobal.pot                  |  11 +-
+ tests/WithinText1.pot                      |  11 +-
+ tests/WithinText2.pot                      |  32 ++++--
+ tests/run_tests.py                         |   +-
  27 files changed, 481 insertions(+), 123 deletions(-)
 
 commit 63e2b5739977a99a70898e6c78798b7eaa66293e
@@ -1366,8 +1435,8 @@ Date:   Wed Apr 4 12:39:06 2012 -0400
 
     Don't error out when invalid msgstr is non-ascii
 
- itstool.in |    3 ++-
- 1 files changed, 2 insertions(+), 1 deletions(-)
+ itstool.in | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
 
 commit 367d347cfc0d7bfcc25ab5b83c59e8824af4ae27
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1375,8 +1444,8 @@ Date:   Mon Apr 2 10:16:29 2012 -0400
 
     Proper error message when source XML file can't be read
 
- itstool.in |    6 +++++-
- 1 files changed, 5 insertions(+), 1 deletions(-)
+ itstool.in | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
 
 commit 3ff47350b0386c971e4fb1955f87fefc2c5aafd1
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1384,8 +1453,8 @@ Date:   Mon Apr 2 09:51:30 2012 -0400
 
     Handle UTF-8 in attribute values
 
- itstool.in |    2 ++
- 1 files changed, 2 insertions(+), 0 deletions(-)
+ itstool.in | 2 ++
+ 1 file changed, 2 insertions(+)
 
 commit 1e0fa47194bbfcbd30e402a4897a0856a6045b73
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1393,8 +1462,8 @@ Date:   Fri Mar 23 10:09:55 2012 -0400
 
     Don't output external ref messages under its:translate="no"
 
- itstool.in |    9 +++++++++
- 1 files changed, 9 insertions(+), 0 deletions(-)
+ itstool.in | 9 +++++++++
+ 1 file changed, 9 insertions(+)
 
 commit 80b34e2870abd08cb96f2929d8ee32acab3d89e9
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1402,9 +1471,9 @@ Date:   Sun Feb 5 11:53:41 2012 -0500
 
     Version 1.1.2
 
- NEWS         |    4 ++++
- configure.ac |    2 +-
- 2 files changed, 5 insertions(+), 1 deletions(-)
+ NEWS         | 4 ++++
+ configure.ac | 2 +-
+ 2 files changed, 5 insertions(+), 1 deletion(-)
 
 commit ed24c8ab3b22a085daea614638cbc15796011f15
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1418,9 +1487,9 @@ Date:   Tue Sep 27 10:16:55 2011 -0400
     
     https://bugs.freedesktop.org/show_bug.cgi?id=41254
 
- itstool.in                    |   38 ++++++++++++++++++++++++++++++--------
- tests/Translate3.ll.wrong.xml |   12 ++++++++++++
- tests/run_tests.py            |   23 +++++++++++++++++------
+ itstool.in                    | 38 ++++++++++++++++++++++++++++++--------
+ tests/Translate3.ll.wrong.xml | 12 ++++++++++++
+ tests/run_tests.py            | 23 +++++++++++++++++------
  3 files changed, 59 insertions(+), 14 deletions(-)
 
 commit e5c3be76682a1e1d224ad89fa3798cf3a7b81900
@@ -1429,9 +1498,9 @@ Date:   Mon Sep 19 09:12:30 2011 -0400
 
     Version 1.1.1
 
- NEWS         |    7 +++++++
- configure.ac |    2 +-
- 2 files changed, 8 insertions(+), 1 deletions(-)
+ NEWS         | 7 +++++++
+ configure.ac | 2 +-
+ 2 files changed, 8 insertions(+), 1 deletion(-)
 
 commit 0520144626db679e81725aebfaba273a52fd0bf4
 Merge: 092a264 7e07396
@@ -1460,9 +1529,9 @@ Date:   Wed Aug 17 13:32:42 2011 +0200
 
     Catch XML errors in translated content
 
- itstool.in                   |    1 +
- tests/Translate3.ll.wrong.po |   19 +++++++++++++++++++
- tests/run_tests.py           |   24 ++++++++++++++++++------
+ itstool.in                   |  1 +
+ tests/Translate3.ll.wrong.po | 19 +++++++++++++++++++
+ tests/run_tests.py           | 24 ++++++++++++++++++------
  3 files changed, 38 insertions(+), 6 deletions(-)
 
 commit 1abdf1b0d83b37a9f298563e139c118c9a62629b
@@ -1471,9 +1540,9 @@ Date:   Wed Aug 17 12:10:36 2011 +0200
 
     Catch XML parsing errors so itstool does properly exit with error code
 
- itstool.in          |   10 ++++++++++
- tests/Malformed.xml |    6 ++++++
- tests/run_tests.py  |   18 ++++++++++++------
+ itstool.in          | 10 ++++++++++
+ tests/Malformed.xml |  6 ++++++
+ tests/run_tests.py  | 18 ++++++++++++------
  3 files changed, 28 insertions(+), 6 deletions(-)
 
 commit 6411b09431eb72ed5426d40a0142e7479c486d3b
@@ -1482,11 +1551,11 @@ Date:   Wed Jun 29 21:15:46 2011 +0200
 
     Fix placeholder translation when it contains sub-elements
 
- itstool.in               |   12 ++++++++++--
- tests/Placeholder.ll.po  |   19 +++++++++++++++++++
- tests/Placeholder.ll.xml |    6 ++++++
- tests/Placeholder.xml    |    5 +++++
- tests/run_tests.py       |    4 +++-
+ itstool.in               | 12 ++++++++++--
+ tests/Placeholder.ll.po  | 19 +++++++++++++++++++
+ tests/Placeholder.ll.xml |  6 ++++++
+ tests/Placeholder.xml    |  5 +++++
+ tests/run_tests.py       |  4 +++-
  5 files changed, 43 insertions(+), 3 deletions(-)
 
 commit 6e6ca0daf4084aaa94268f062461e1ec712698fa
@@ -1495,9 +1564,9 @@ Date:   Mon Jun 27 14:59:56 2011 -0400
 
     Version 1.1.0
 
- NEWS         |   14 ++++++++++++++
- configure.ac |    2 +-
- 2 files changed, 15 insertions(+), 1 deletions(-)
+ NEWS         | 14 ++++++++++++++
+ configure.ac |  2 +-
+ 2 files changed, 15 insertions(+), 1 deletion(-)
 
 commit 187fcbe585560f128c7436e66f6b8e3a789a73b0
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1505,8 +1574,8 @@ Date:   Sun Jun 26 12:28:10 2011 -0400
 
     mallard.its: Set msgctxt on info titles
 
- its/mallard.its |    3 +++
- 1 files changed, 3 insertions(+), 0 deletions(-)
+ its/mallard.its | 3 +++
+ 1 file changed, 3 insertions(+)
 
 commit b57dfa4327da4d889dbfc5d26d824482fd7b2f54
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1514,8 +1583,8 @@ Date:   Sun Jun 26 12:27:46 2011 -0400
 
     Don't bomb if a locNotePointer returns a string
 
- itstool.in |   22 +++++++++++++---------
- 1 files changed, 13 insertions(+), 9 deletions(-)
+ itstool.in | 22 +++++++++++++---------
+ 1 file changed, 13 insertions(+), 9 deletions(-)
 
 commit 8d97758ac43f2079d252fedf2a9666b33a751fd0
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1523,13 +1592,13 @@ Date:   Sat Jun 25 14:49:53 2011 -0400
 
     Added itst:context to specify a msgctxt for a node
 
- itstool.in           |   35 ++++++++++++++++++++++++++++++++++-
- tests/Context.ll.po  |   35 +++++++++++++++++++++++++++++++++++
- tests/Context.ll.xml |   15 +++++++++++++++
- tests/Context.pot    |   35 +++++++++++++++++++++++++++++++++++
- tests/Context.xml    |   14 ++++++++++++++
- tests/run_tests.py   |    3 +++
- 6 files changed, 136 insertions(+), 1 deletions(-)
+ itstool.in           | 35 ++++++++++++++++++++++++++++++++++-
+ tests/Context.ll.po  | 35 +++++++++++++++++++++++++++++++++++
+ tests/Context.ll.xml | 15 +++++++++++++++
+ tests/Context.pot    | 35 +++++++++++++++++++++++++++++++++++
+ tests/Context.xml    | 14 ++++++++++++++
+ tests/run_tests.py   |  3 +++
+ 6 files changed, 136 insertions(+), 1 deletion(-)
 
 commit e84f296dd21de75b9244896be9d2acc6aeed4dea
 Author: Claude Paroz <claude@2xlibre.net>
@@ -1537,8 +1606,8 @@ Date:   Fri Jun 24 12:25:17 2011 -0400
 
     Fixes for Python 3
 
- itstool.in         |    2 +-
- tests/run_tests.py |    2 +-
+ itstool.in         | 2 +-
+ tests/run_tests.py | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 commit b13436f2a75ffded500e5f26028237d337510394
@@ -1547,8 +1616,8 @@ Date:   Fri Jun 24 11:21:38 2011 -0400
 
     Use #!/usr/bin/python -s for shebang, RH bug #702989
 
- itstool.in |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
+ itstool.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit d8b399ae628e822ee9a9762657969361c5aebc93
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1556,9 +1625,9 @@ Date:   Fri Jun 24 10:19:54 2011 -0400
 
     Make itst:drop work on non-inline nodes
 
- itstool.in         |   15 ++++++++++++++-
- tests/Droprule.xml |    2 ++
- 2 files changed, 16 insertions(+), 1 deletions(-)
+ itstool.in         | 15 ++++++++++++++-
+ tests/Droprule.xml |  2 ++
+ 2 files changed, 16 insertions(+), 1 deletion(-)
 
 commit 56cd8382ae979fab1a4a4a25f052d93d1070fc6d
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1566,9 +1635,9 @@ Date:   Thu Jun 23 17:51:40 2011 -0400
 
     Made dropRule take a drop attribute, like other rules
 
- itstool.in            |    6 +++---
- tests/Droprule.ll.xml |    2 +-
- tests/Droprule.xml    |    2 +-
+ itstool.in            | 6 +++---
+ tests/Droprule.ll.xml | 2 +-
+ tests/Droprule.xml    | 2 +-
  3 files changed, 5 insertions(+), 5 deletions(-)
 
 commit 333218d4978a7b203252d35e7979f64cfb3b0c1c
@@ -1581,13 +1650,13 @@ Date:   Tue May 31 22:46:29 2011 +0200
     the translation, including its content. The resulting xml will not
     have the tag either.
 
- itstool.in            |    7 ++++++-
- tests/Droprule.ll.po  |   15 +++++++++++++++
- tests/Droprule.ll.xml |   11 +++++++++++
- tests/Droprule.pot    |   15 +++++++++++++++
- tests/Droprule.xml    |   10 ++++++++++
- tests/run_tests.py    |    4 ++++
- 6 files changed, 61 insertions(+), 1 deletions(-)
+ itstool.in            |  7 ++++++-
+ tests/Droprule.ll.po  | 15 +++++++++++++++
+ tests/Droprule.ll.xml | 11 +++++++++++
+ tests/Droprule.pot    | 15 +++++++++++++++
+ tests/Droprule.xml    | 10 ++++++++++
+ tests/run_tests.py    |  4 ++++
+ 6 files changed, 61 insertions(+), 1 deletion(-)
 
 commit 7cda8e16e2281e0e6c42f1e47bfc98ee5e4fe4ae
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1595,17 +1664,13 @@ Date:   Thu Jun 23 17:45:16 2011 -0400
 
     Renamed attribute test files
 
- tests/Attributes1.ll.po  |   19 +++++++++++++++++++
- tests/Attributes1.ll.xml |   10 ++++++++++
- tests/Attributes1.pot    |   19 +++++++++++++++++++
- tests/Attributes1.xml    |   10 ++++++++++
- tests/README             |    2 --
- tests/run_tests.py       |    4 ++--
- tests/x-attr1.ll.po      |   19 -------------------
- tests/x-attr1.ll.xml     |   10 ----------
- tests/x-attr1.pot        |   19 -------------------
- tests/x-attr1.xml        |   10 ----------
- 10 files changed, 60 insertions(+), 62 deletions(-)
+ tests/{x-attr1.ll.po => Attributes1.ll.po}   | 4 ++--
+ tests/{x-attr1.ll.xml => Attributes1.ll.xml} | 0
+ tests/{x-attr1.pot => Attributes1.pot}       | 4 ++--
+ tests/{x-attr1.xml => Attributes1.xml}       | 0
+ tests/README                                 | 2 --
+ tests/run_tests.py                           | 4 ++--
+ 6 files changed, 6 insertions(+), 8 deletions(-)
 
 commit 4334f863ae6ab636b3e7c905e15693a188e4bee1
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1613,13 +1678,13 @@ Date:   Thu Jun 23 16:11:42 2011 -0400
 
     Handled translatable attributes in non-translatable elements
 
- itstool.in           |   25 +++++++++++++++----------
- tests/README         |    4 +++-
- tests/run_tests.py   |    3 +++
- tests/x-attr1.ll.po  |   19 +++++++++++++++++++
- tests/x-attr1.ll.xml |   10 ++++++++++
- tests/x-attr1.pot    |   19 +++++++++++++++++++
- tests/x-attr1.xml    |   10 ++++++++++
+ itstool.in           | 25 +++++++++++++++----------
+ tests/README         |  4 +++-
+ tests/run_tests.py   |  3 +++
+ tests/x-attr1.ll.po  | 19 +++++++++++++++++++
+ tests/x-attr1.ll.xml | 10 ++++++++++
+ tests/x-attr1.pot    | 19 +++++++++++++++++++
+ tests/x-attr1.xml    | 10 ++++++++++
  7 files changed, 79 insertions(+), 11 deletions(-)
 
 commit 7ecd70b27d5cc22f8d6b35fc68aa9fe9cd3a7def
@@ -1628,17 +1693,17 @@ Date:   Sun Jun 12 21:40:36 2011 +0200
 
     Extract and translate node attributes
 
- itstool.in                   |   41 ++++++++++++++++++++++++++++++++++++-----
- tests/Translate1.ll.po       |    4 ++++
- tests/Translate1.ll.xml      |    2 +-
- tests/Translate1.pot         |    4 ++++
- tests/Translate2.ll.po       |    4 ++++
- tests/Translate2.ll.xml      |    2 +-
- tests/Translate2.pot         |    4 ++++
- tests/TranslateGlobal.ll.po  |   23 +++++++++++++++++++++++
- tests/TranslateGlobal.ll.xml |   13 +++++++++++++
- tests/TranslateGlobal.pot    |   23 +++++++++++++++++++++++
- tests/run_tests.py           |    7 +++----
+ itstool.in                   | 41 ++++++++++++++++++++++++++++++++++++-----
+ tests/Translate1.ll.po       |  4 ++++
+ tests/Translate1.ll.xml      |  2 +-
+ tests/Translate1.pot         |  4 ++++
+ tests/Translate2.ll.po       |  4 ++++
+ tests/Translate2.ll.xml      |  2 +-
+ tests/Translate2.pot         |  4 ++++
+ tests/TranslateGlobal.ll.po  | 23 +++++++++++++++++++++++
+ tests/TranslateGlobal.ll.xml | 13 +++++++++++++
+ tests/TranslateGlobal.pot    | 23 +++++++++++++++++++++++
+ tests/run_tests.py           |  7 +++----
  11 files changed, 116 insertions(+), 11 deletions(-)
 
 commit fadb43fc37dbe18d9b1204bb13fb5ccea492b649
@@ -1654,9 +1719,9 @@ Date:   Wed Jun 1 15:11:51 2011 +0200
 
     Fix LocNote2 test and add README in tests
 
- tests/LocNote2.pot |   25 +++++++++++++++++++++++++
- tests/README       |    5 +++++
- tests/run_tests.py |    4 ++--
+ tests/LocNote2.pot | 25 +++++++++++++++++++++++++
+ tests/README       |  5 +++++
+ tests/run_tests.py |  4 ++--
  3 files changed, 32 insertions(+), 2 deletions(-)
 
 commit 43a518a2da4eb11f78b23cbca6291f9cd7c2f4ab
@@ -1665,8 +1730,8 @@ Date:   Wed Jun 1 08:59:26 2011 -0400
 
     Adding copyright and license info to itstool
 
- itstool.in |   17 +++++++++++++++++
- 1 files changed, 17 insertions(+), 0 deletions(-)
+ itstool.in | 17 +++++++++++++++++
+ 1 file changed, 17 insertions(+)
 
 commit 480a2531c9b8ba0249f9326e8d043de309486e5b
 Author: Claude Paroz <claude@2xlibre.net>
@@ -1674,19 +1739,19 @@ Date:   Wed Jun 1 13:45:51 2011 +0200
 
     Add remaining tests
 
- itstool.in                                 |    5 ++-
- tests/EX-locNotePointer-attribute-1.pot    |   21 +++++++++++
- tests/EX-locNoteRefPointer-attribute-1.pot |   21 +++++++++++
- tests/LocNote1.pot                         |   25 +++++++++++++
- tests/LocNote3.pot                         |   29 ++++++++++++++++
- tests/LocNote4.pot                         |   30 ++++++++++++++++
- tests/WithinText1.ll.po                    |   23 ++++++++++++
- tests/WithinText1.ll.xml                   |   14 ++++++++
- tests/WithinText1.pot                      |   23 ++++++++++++
- tests/WithinText2.ll.po                    |   51 ++++++++++++++++++++++++++++
- tests/WithinText2.ll.xml                   |   21 +++++++++++
- tests/WithinText2.pot                      |   51 ++++++++++++++++++++++++++++
- tests/run_tests.py                         |   40 ++++++++++++++++++++-
+ itstool.in                                 |  5 +--
+ tests/EX-locNotePointer-attribute-1.pot    | 21 ++++++++++++
+ tests/EX-locNoteRefPointer-attribute-1.pot | 21 ++++++++++++
+ tests/LocNote1.pot                         | 25 +++++++++++++++
+ tests/LocNote3.pot                         | 29 +++++++++++++++++
+ tests/LocNote4.pot                         | 30 ++++++++++++++++++
+ tests/WithinText1.ll.po                    | 23 ++++++++++++++
+ tests/WithinText1.ll.xml                   | 14 ++++++++
+ tests/WithinText1.pot                      | 23 ++++++++++++++
+ tests/WithinText2.ll.po                    | 51 ++++++++++++++++++++++++++++++
+ tests/WithinText2.ll.xml                   | 21 ++++++++++++
+ tests/WithinText2.pot                      | 51 ++++++++++++++++++++++++++++++
+ tests/run_tests.py                         | 40 +++++++++++++++++++++--
  13 files changed, 350 insertions(+), 4 deletions(-)
 
 commit 66f3fdd0d678bfffefef4b26e0c6812e3a9b8bb8
@@ -1697,8 +1762,8 @@ Date:   Wed Jun 1 08:07:42 2011 -0400
     
     We weren't handling tests/WithinText2.xml correctly
 
- itstool.in |    3 +--
- 1 files changed, 1 insertions(+), 2 deletions(-)
+ itstool.in | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
 
 commit 2ffe1d30ea1d5925a75955bc9b88c3d4c14b7b46
 Author: Claude Paroz <claude@2xlibre.net>
@@ -1706,22 +1771,22 @@ Date:   Tue May 31 22:05:00 2011 +0200
 
     Add tests for the Translate* series
 
- tests/Translate2.ll.po  |   15 +++++++++++++++
- tests/Translate2.ll.xml |   10 ++++++++++
- tests/Translate2.pot    |   15 +++++++++++++++
- tests/Translate3.ll.po  |   19 +++++++++++++++++++
- tests/Translate3.ll.xml |   10 ++++++++++
- tests/Translate4.ll.po  |   19 +++++++++++++++++++
- tests/Translate4.ll.xml |   10 ++++++++++
- tests/Translate5.ll.po  |   19 +++++++++++++++++++
- tests/Translate5.ll.xml |   19 +++++++++++++++++++
- tests/Translate5.pot    |   19 +++++++++++++++++++
- tests/Translate6.ll.po  |   31 +++++++++++++++++++++++++++++++
- tests/Translate6.ll.xml |   19 +++++++++++++++++++
- tests/Translate7.ll.po  |   19 +++++++++++++++++++
- tests/Translate7.ll.xml |   29 +++++++++++++++++++++++++++++
- tests/Translate7.pot    |   19 +++++++++++++++++++
- tests/run_tests.py      |   41 +++++++++++++++++++++++++++++++++++------
+ tests/Translate2.ll.po  | 15 +++++++++++++++
+ tests/Translate2.ll.xml | 10 ++++++++++
+ tests/Translate2.pot    | 15 +++++++++++++++
+ tests/Translate3.ll.po  | 19 +++++++++++++++++++
+ tests/Translate3.ll.xml | 10 ++++++++++
+ tests/Translate4.ll.po  | 19 +++++++++++++++++++
+ tests/Translate4.ll.xml | 10 ++++++++++
+ tests/Translate5.ll.po  | 19 +++++++++++++++++++
+ tests/Translate5.ll.xml | 19 +++++++++++++++++++
+ tests/Translate5.pot    | 19 +++++++++++++++++++
+ tests/Translate6.ll.po  | 31 +++++++++++++++++++++++++++++++
+ tests/Translate6.ll.xml | 19 +++++++++++++++++++
+ tests/Translate7.ll.po  | 19 +++++++++++++++++++
+ tests/Translate7.ll.xml | 29 +++++++++++++++++++++++++++++
+ tests/Translate7.pot    | 19 +++++++++++++++++++
+ tests/run_tests.py      | 41 +++++++++++++++++++++++++++++++++++------
  16 files changed, 307 insertions(+), 6 deletions(-)
 
 commit d3177444660bac67265ba9cf17d586fd1b0b2907
@@ -1730,8 +1795,8 @@ Date:   Tue May 31 20:41:13 2011 +0200
 
     Fix xml iteration when constructing translated subnodes
 
- itstool.in              |    3 ++-
- tests/Translate1.ll.xml |    2 +-
+ itstool.in              | 3 ++-
+ tests/Translate1.ll.xml | 2 +-
  2 files changed, 3 insertions(+), 2 deletions(-)
 
 commit 6c7b6bb9db8e77ec142fac2c9b514ec1769df65b
@@ -1740,8 +1805,8 @@ Date:   Tue May 31 16:33:48 2011 +0200
 
     Use unicode strings inside of Message class
 
- itstool.in |   40 +++++++++++++++++++++-------------------
- 1 files changed, 21 insertions(+), 19 deletions(-)
+ itstool.in | 40 +++++++++++++++++++++-------------------
+ 1 file changed, 21 insertions(+), 19 deletions(-)
 
 commit f4635d084d93212af73221de5165c3fa92f834cd
 Author: Claude Paroz <claude@2xlibre.net>
@@ -1749,11 +1814,11 @@ Date:   Mon May 30 21:23:15 2011 +0200
 
     Initial test infrastructure
 
- tests/Translate1.ll.po  |   35 +++++++++++++++++++++++++
- tests/Translate1.ll.xml |   39 +++++++++++++++++++++++++++
- tests/Translate1.pot    |   35 +++++++++++++++++++++++++
- tests/run_tests.py      |   66 +++++++++++++++++++++++++++++++++++++++++++++++
- 4 files changed, 175 insertions(+), 0 deletions(-)
+ tests/Translate1.ll.po  | 35 ++++++++++++++++++++++++++
+ tests/Translate1.ll.xml | 39 +++++++++++++++++++++++++++++
+ tests/Translate1.pot    | 35 ++++++++++++++++++++++++++
+ tests/run_tests.py      | 66 +++++++++++++++++++++++++++++++++++++++++++++++++
+ 4 files changed, 175 insertions(+)
 
 commit 00a8df54545a66aa70c20ceecb19709ca0b811a7
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1761,9 +1826,9 @@ Date:   Fri May 27 12:09:10 2011 -0400
 
     Include installation dir in search path if XDG_DATA_DIRS not set
 
- configure.ac |    9 +++++++++
- itstool.in   |    5 ++++-
- 2 files changed, 13 insertions(+), 1 deletions(-)
+ configure.ac | 9 +++++++++
+ itstool.in   | 5 ++++-
+ 2 files changed, 13 insertions(+), 1 deletion(-)
 
 commit abd3afc9bd7066658d295de3a39c5c0b287d0644
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1771,8 +1836,8 @@ Date:   Mon May 9 21:26:42 2011 -0400
 
     itstool: Allow localization notes to be space-preserving
 
- itstool.in |   32 ++++++++++++++++++++++----------
- 1 files changed, 22 insertions(+), 10 deletions(-)
+ itstool.in | 32 ++++++++++++++++++++++----------
+ 1 file changed, 22 insertions(+), 10 deletions(-)
 
 commit 04a706ae1057d0a9ed4b36c7e20292d44e97ad80
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1780,11 +1845,11 @@ Date:   Mon May 9 16:32:25 2011 -0400
 
     itstool.1: Added a man page
 
- .gitignore   |    1 +
- Makefile.am  |   10 +++++++-
- configure.ac |    1 +
- itstool.1.in |   77 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- 4 files changed, 88 insertions(+), 1 deletions(-)
+ .gitignore   |  1 +
+ Makefile.am  | 10 +++++++-
+ configure.ac |  1 +
+ itstool.1.in | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 4 files changed, 88 insertions(+), 1 deletion(-)
 
 commit 69db1ded268af460d31b6ab2d86172873468890f
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1792,8 +1857,8 @@ Date:   Mon May 9 11:15:02 2011 -0400
 
     Catch XPath exceptions and warn
 
- itstool.in |   30 +++++++++++++++++++-----------
- 1 files changed, 19 insertions(+), 11 deletions(-)
+ itstool.in | 30 +++++++++++++++++++-----------
+ 1 file changed, 19 insertions(+), 11 deletions(-)
 
 commit 6fdaea81bf70023612202cadcd7d9995e571f23e
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1801,9 +1866,9 @@ Date:   Fri May 6 17:02:13 2011 -0400
 
     Version 1.0.1
 
- NEWS         |    7 +++++++
- configure.ac |    2 +-
- 2 files changed, 8 insertions(+), 1 deletions(-)
+ NEWS         | 7 +++++++
+ configure.ac | 2 +-
+ 2 files changed, 8 insertions(+), 1 deletion(-)
 
 commit e9344508508112ecd177232ba49b5664e860bc9f
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1811,8 +1876,8 @@ Date:   Tue May 3 12:48:53 2011 -0400
 
     itstool: Convert posixy locale strings to BCP47
 
- itstool.in |   29 ++++++++++++++++++++++++++++-
- 1 files changed, 28 insertions(+), 1 deletions(-)
+ itstool.in | 29 ++++++++++++++++++++++++++++-
+ 1 file changed, 28 insertions(+), 1 deletion(-)
 
 commit 81af5ab154bf68b1e267e1f4c1ecea760a19706f
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1820,8 +1885,8 @@ Date:   Sat Apr 30 14:57:48 2011 -0400
 
     Fixed --help string for --version
 
- itstool.in |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
+ itstool.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit 4aac006a9f0350f3dbd6588cdb4254e8b895ec78
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1829,12 +1894,11 @@ Date:   Sat Apr 30 14:56:07 2011 -0400
 
     Added --version
 
- .gitignore   |    1 +
- Makefile.am  |    2 +-
- configure.ac |    1 +
- itstool      |  786 ---------------------------------------------------------
- itstool.in   |  797 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- 5 files changed, 800 insertions(+), 787 deletions(-)
+ .gitignore            |  1 +
+ Makefile.am           |  2 +-
+ configure.ac          |  1 +
+ itstool => itstool.in | 11 +++++++++++
+ 4 files changed, 14 insertions(+), 1 deletion(-)
 
 commit 6d60e6e1d14bc6b62e0c43cb0781d562d23dd684
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1842,8 +1906,8 @@ Date:   Tue Apr 26 17:27:22 2011 -0400
 
     Use #. for comments. Plain # is for notes written by translators
 
- itstool |    6 +++---
- 1 files changed, 3 insertions(+), 3 deletions(-)
+ itstool | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
 
 commit e091a4736f972b6de8a62dd934ea7a38b089078a
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1851,8 +1915,8 @@ Date:   Tue Apr 26 16:22:24 2011 -0400
 
     Adding the PO header, at Claude's request
 
- itstool |   12 ++++++++++++
- 1 files changed, 12 insertions(+), 0 deletions(-)
+ itstool | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
 
 commit 48e4257421beb439f23a78507f43aae694775974
 Author: Javier Jardón <jjardon@gnome.org>
@@ -1862,8 +1926,8 @@ Date:   Tue Apr 26 17:00:23 2011 +0100
     
     Also handle the option to not run the configure step
 
- autogen.sh |    7 +++++--
- 1 files changed, 5 insertions(+), 2 deletions(-)
+ autogen.sh | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
 
 commit 65ecbc8856e91b991d812e08dfa10300504bfb1b
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1871,9 +1935,9 @@ Date:   Tue Apr 26 11:33:03 2011 -0400
 
     Version 1.0.0
 
- NEWS         |    3 +++
- configure.ac |    2 +-
- 2 files changed, 4 insertions(+), 1 deletions(-)
+ NEWS         | 3 +++
+ configure.ac | 2 +-
+ 2 files changed, 4 insertions(+), 1 deletion(-)
 
 commit f3d1ea105a2f99a3c5732d10d03011208cf7ed66
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1881,8 +1945,8 @@ Date:   Tue Apr 26 11:22:51 2011 -0400
 
     Makefile.am: Added itstool to EXTRA_DIST
 
- Makefile.am |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
+ Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
 
 commit c9fe5e91ae0096d655377e44fa1328f5bf544978
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1890,8 +1954,8 @@ Date:   Tue Apr 26 11:21:03 2011 -0400
 
     xhtml.its: Preserve space on <pre>
 
- its/xhtml.its |    2 ++
- 1 files changed, 2 insertions(+), 0 deletions(-)
+ its/xhtml.its | 2 ++
+ 1 file changed, 2 insertions(+)
 
 commit 93733013d34ed106108e327d9828d5156b9793e2
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1899,10 +1963,10 @@ Date:   Mon Apr 25 20:06:54 2011 -0400
 
     Switched itst namespace to itstool.org
 
- its/docbook.its |    2 +-
- its/mallard.its |    2 +-
- its/xhtml.its   |    2 +-
- itstool         |    4 ++--
+ its/docbook.its | 2 +-
+ its/mallard.its | 2 +-
+ its/xhtml.its   | 2 +-
+ itstool         | 4 ++--
  4 files changed, 5 insertions(+), 5 deletions(-)
 
 commit 749005fbafe481fd7c468db5739d6927f95b637b
@@ -1911,9 +1975,9 @@ Date:   Mon Apr 25 12:28:06 2011 -0400
 
     xhtml.its: Added a basic XHTML ITS file
 
- its/Makefile.am |    2 +-
- its/xhtml.its   |   44 ++++++++++++++++++++++++++++++++++++++++++++
- 2 files changed, 45 insertions(+), 1 deletions(-)
+ its/Makefile.am |  2 +-
+ its/xhtml.its   | 44 ++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 45 insertions(+), 1 deletion(-)
 
 commit cb91fbb7fe9bbc543e64723d82c3d00c60f0d313
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1921,8 +1985,8 @@ Date:   Mon Apr 25 11:56:36 2011 -0400
 
     docbook.its: Some updates
 
- its/docbook.its |  327 +------------------------------------------------------
- 1 files changed, 6 insertions(+), 321 deletions(-)
+ its/docbook.its | 327 ++------------------------------------------------------
+ 1 file changed, 6 insertions(+), 321 deletions(-)
 
 commit aeec20e8f3d7f0e2fc00b9e47c7e7331be6d588b
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1930,9 +1994,9 @@ Date:   Mon Apr 25 09:45:16 2011 -0400
 
     Implement external refs, also msgctxt "_" for auto stuff
 
- its/docbook.its |    5 +++++
- its/mallard.its |    2 ++
- itstool         |   43 +++++++++++++++++++++++++++++++++++++++++--
+ its/docbook.its |  5 +++++
+ its/mallard.its |  2 ++
+ itstool         | 43 +++++++++++++++++++++++++++++++++++++++++--
  3 files changed, 48 insertions(+), 2 deletions(-)
 
 commit 26d4de24ba90a96c33328f1a59a1204ed891ff11
@@ -1941,8 +2005,8 @@ Date:   Mon Apr 11 14:33:20 2011 -0400
 
     UTF-8 encode translator credit information
 
- itstool |    1 +
- 1 files changed, 1 insertions(+), 0 deletions(-)
+ itstool | 1 +
+ 1 file changed, 1 insertion(+)
 
 commit a4726b62b145ecc30dea58f07ad391a3f2ad3a0b
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1950,8 +2014,8 @@ Date:   Mon Apr 11 14:30:45 2011 -0400
 
     Only add translator-credits once, avoid dup comment
 
- itstool |   15 +++++++++++----
- 1 files changed, 11 insertions(+), 4 deletions(-)
+ itstool | 15 +++++++++++----
+ 1 file changed, 11 insertions(+), 4 deletions(-)
 
 commit dd54d86c4e72f443b8134350e83be8243905851c
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1959,8 +2023,8 @@ Date:   Mon Apr 11 14:19:42 2011 -0400
 
     Don't translate Mallard credit/email
 
- its/mallard.its |    1 +
- 1 files changed, 1 insertions(+), 0 deletions(-)
+ its/mallard.its | 1 +
+ 1 file changed, 1 insertion(+)
 
 commit 0d10c022365240c382666a97c6fe8d5a4f777cab
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1968,8 +2032,8 @@ Date:   Mon Apr 11 14:06:20 2011 -0400
 
     Only add translator-credits if itst:credits matched
 
- itstool |    9 +++++----
- 1 files changed, 5 insertions(+), 4 deletions(-)
+ itstool | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
 
 commit f2a60e4c0880b8a3111db3aeddd41865b1044162
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1977,8 +2041,8 @@ Date:   Mon Apr 11 14:04:45 2011 -0400
 
     Support XLink on its:rules
 
- itstool |   12 ++++++++++--
- 1 files changed, 10 insertions(+), 2 deletions(-)
+ itstool | 12 ++++++++++--
+ 1 file changed, 10 insertions(+), 2 deletions(-)
 
 commit b30a771b03adca4da26d5a21879c5fcd562f67b4
 Author: Shaun McCance <shaunm@gnome.org>
@@ -1986,9 +2050,9 @@ Date:   Mon Apr 11 10:39:57 2011 -0400
 
     Implemented translator credits
 
- its/docbook.its |   20 +++++-------------
- its/mallard.its |   18 +++++-----------
- itstool         |   59 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
+ its/docbook.its | 20 ++++++-------------
+ its/mallard.its | 18 ++++++------------
+ itstool         | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
  3 files changed, 68 insertions(+), 29 deletions(-)
 
 commit 1a2343bc6164ffe87dad0eb61221c49abb99d544
@@ -1997,9 +2061,9 @@ Date:   Thu Dec 23 12:33:25 2010 -0500
 
     Read and set language attributes
 
- its/docbook.its |    3 +
- its/mallard.its |    4 ++
- itstool         |  130 +++++++++++++++++++++++++++++++++++++------------------
+ its/docbook.its |   3 ++
+ its/mallard.its |   4 ++
+ itstool         | 130 ++++++++++++++++++++++++++++++++++++++------------------
  3 files changed, 95 insertions(+), 42 deletions(-)
 
 commit be53ea2c55a64b5362c739552cfef3d164b0066b
@@ -2008,8 +2072,8 @@ Date:   Wed Dec 22 11:43:00 2010 -0500
 
     [itstool] Got rid of all the redundant extra ns defs
 
- itstool |   28 +++++++++++++++++++++++++---
- 1 files changed, 25 insertions(+), 3 deletions(-)
+ itstool | 28 +++++++++++++++++++++++++---
+ 1 file changed, 25 insertions(+), 3 deletions(-)
 
 commit f20dad00869457d2918ca98f04d0d16c4e15b635
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2017,8 +2081,8 @@ Date:   Tue Dec 21 09:11:25 2010 -0500
 
     [itstool] Fixed up some of the -o handling
 
- itstool |   19 +++++++++++++------
- 1 files changed, 13 insertions(+), 6 deletions(-)
+ itstool | 19 +++++++++++++------
+ 1 file changed, 13 insertions(+), 6 deletions(-)
 
 commit 1ff349b299d0acefd6f006c1835afe9f691d1610
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2026,9 +2090,9 @@ Date:   Mon Nov 8 11:05:55 2010 -0500
 
     [its/ttml.its] Adding basic TTML ITS, tt:span = withinText
 
- its/Makefile.am |    2 +-
- its/ttml.its    |    6 ++++++
- 2 files changed, 7 insertions(+), 1 deletions(-)
+ its/Makefile.am | 2 +-
+ its/ttml.its    | 6 ++++++
+ 2 files changed, 7 insertions(+), 1 deletion(-)
 
 commit e780a5098352dfc4864701a3568017432fd3fe3c
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2036,8 +2100,8 @@ Date:   Wed Oct 27 13:44:23 2010 -0400
 
     [its] Don't translate DocBook remark or Mallard comment
 
- its/docbook.its |    4 +++-
- its/mallard.its |    4 +++-
+ its/docbook.its | 4 +++-
+ its/mallard.its | 4 +++-
  2 files changed, 6 insertions(+), 2 deletions(-)
 
 commit 854b53dd84d345239fde4e2c26c224c6c81d91b9
@@ -2049,8 +2113,8 @@ Date:   Wed Oct 27 13:37:52 2010 -0400
     Sometimes messages get merged. Sometimes one of them is no-wrap, and
     another isn't. In this case, prefer no-wrap. Better safe than sorry.
 
- itstool |   14 +++++++++++---
- 1 files changed, 11 insertions(+), 3 deletions(-)
+ itstool | 14 +++++++++++---
+ 1 file changed, 11 insertions(+), 3 deletions(-)
 
 commit 166fd8dae7aaf3774efedab8ebf6fdc254b5bd9c
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2058,8 +2122,8 @@ Date:   Wed Oct 27 11:33:09 2010 -0400
 
     [itstool] Fixed a few references of things that don't exist
 
- itstool |    6 +++---
- 1 files changed, 3 insertions(+), 3 deletions(-)
+ itstool | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
 
 commit 83199f895d2d8257f0d2752ac40b920ea34dfa70
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2067,8 +2131,8 @@ Date:   Wed Oct 27 11:18:53 2010 -0400
 
     [itstool] Set the xpath context node when evaluating locNotePointer
 
- itstool |    6 ++++++
- 1 files changed, 6 insertions(+), 0 deletions(-)
+ itstool | 6 ++++++
+ 1 file changed, 6 insertions(+)
 
 commit 8906f85e0252895bc425dd8d629c20d2f533595f
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2080,8 +2144,8 @@ Date:   Wed Oct 27 11:10:00 2010 -0400
     track of when I had unicode objects and when I had byte strings.
     Turns out we can just treat it all as byte strings.
 
- itstool |    4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
+ itstool | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
 commit ca20cb53d62873f1e884018c69359e217061721f
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2093,8 +2157,8 @@ Date:   Wed Oct 27 10:17:45 2010 -0400
     format as large as DocBook can slow down everything. This allows us
     to skip rules for non-matching formats.
 
- its/its.its |    4 ----
- itstool     |   31 +++++++++++++++++++++++++++----
+ its/its.its |  4 ----
+ itstool     | 31 +++++++++++++++++++++++++++----
  2 files changed, 27 insertions(+), 8 deletions(-)
 
 commit 42ab65c65358d946b811358e355f6e04faf70e37
@@ -2103,9 +2167,9 @@ Date:   Wed Oct 27 09:53:20 2010 -0400
 
     [its.its] ITS rule to prevent translation of its:locNote elements
 
- its/Makefile.am |    2 +-
- its/its.its     |    9 +++++++++
- 2 files changed, 10 insertions(+), 1 deletions(-)
+ its/Makefile.am | 2 +-
+ its/its.its     | 9 +++++++++
+ 2 files changed, 10 insertions(+), 1 deletion(-)
 
 commit ff882e3b433fc98bb5595d9af226775a12c87770
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2113,8 +2177,8 @@ Date:   Wed Oct 27 09:52:56 2010 -0400
 
     [itstool] Implement localization notes
 
- itstool |   78 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----
- 1 files changed, 73 insertions(+), 5 deletions(-)
+ itstool | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
+ 1 file changed, 73 insertions(+), 5 deletions(-)
 
 commit e8c9277a233c64ad80d379168f478ef526f81093
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2122,8 +2186,8 @@ Date:   Tue Oct 26 15:56:57 2010 -0400
 
     [itstool] Adding -i option to load in additional ITS rules
 
- itstool |   16 ++++++++++++++--
- 1 files changed, 14 insertions(+), 2 deletions(-)
+ itstool | 16 ++++++++++++++--
+ 1 file changed, 14 insertions(+), 2 deletions(-)
 
 commit bb185efafced05984c99656afca5adabccb45f90
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2131,30 +2195,30 @@ Date:   Tue Oct 26 13:19:26 2010 -0400
 
     [tests] Add W3C ITS test files
 
- tests/EX-locNote-element-1.xml             |   14 ++++++++++
- tests/EX-locNote-selector-2.xml            |   10 +++++++
- tests/EX-locNotePointer-attribute-1.xml    |   19 +++++++++++++
- tests/EX-locNoteRef-attribute-1.xml        |   12 ++++++++
- tests/EX-locNoteRefPointer-attribute-1.xml |   16 +++++++++++
- tests/LocNote1.xml                         |   21 +++++++++++++++
- tests/LocNote2.xml                         |   15 ++++++++++
- tests/LocNote2_LinkedRules.xml             |    9 ++++++
- tests/LocNote3.xml                         |   17 ++++++++++++
- tests/LocNote4.xml                         |    8 +++++
- tests/Translate1.xml                       |   39 ++++++++++++++++++++++++++++
- tests/Translate2.xml                       |   10 +++++++
- tests/Translate2_LinkedRules.xml           |    5 +++
- tests/Translate3.xml                       |   13 +++++++++
- tests/Translate4.xml                       |   10 +++++++
- tests/Translate5.xml                       |   19 +++++++++++++
- tests/Translate6.xml                       |   19 +++++++++++++
- tests/Translate7.xml                       |   28 ++++++++++++++++++++
- tests/TranslateGlobal.xml                  |   13 +++++++++
- tests/TranslateGlobal_LinkedRules.xml      |    6 ++++
- tests/WithinText1.xml                      |   12 ++++++++
- tests/WithinText2.xml                      |   25 ++++++++++++++++++
- tests/WithinText2_LinkedRules.xml          |    6 ++++
- 23 files changed, 346 insertions(+), 0 deletions(-)
+ tests/EX-locNote-element-1.xml             | 14 +++++++++++
+ tests/EX-locNote-selector-2.xml            | 10 ++++++++
+ tests/EX-locNotePointer-attribute-1.xml    | 19 +++++++++++++++
+ tests/EX-locNoteRef-attribute-1.xml        | 12 +++++++++
+ tests/EX-locNoteRefPointer-attribute-1.xml | 16 ++++++++++++
+ tests/LocNote1.xml                         | 21 ++++++++++++++++
+ tests/LocNote2.xml                         | 15 ++++++++++++
+ tests/LocNote2_LinkedRules.xml             |  9 +++++++
+ tests/LocNote3.xml                         | 17 +++++++++++++
+ tests/LocNote4.xml                         |  8 ++++++
+ tests/Translate1.xml                       | 39 ++++++++++++++++++++++++++++++
+ tests/Translate2.xml                       | 10 ++++++++
+ tests/Translate2_LinkedRules.xml           |  5 ++++
+ tests/Translate3.xml                       | 13 ++++++++++
+ tests/Translate4.xml                       | 10 ++++++++
+ tests/Translate5.xml                       | 19 +++++++++++++++
+ tests/Translate6.xml                       | 19 +++++++++++++++
+ tests/Translate7.xml                       | 28 +++++++++++++++++++++
+ tests/TranslateGlobal.xml                  | 13 ++++++++++
+ tests/TranslateGlobal_LinkedRules.xml      |  6 +++++
+ tests/WithinText1.xml                      | 12 +++++++++
+ tests/WithinText2.xml                      | 25 +++++++++++++++++++
+ tests/WithinText2_LinkedRules.xml          |  6 +++++
+ 23 files changed, 346 insertions(+)
 
 commit dd06cccc33e029be8154500b9ada406ca9c0008c
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2162,8 +2226,8 @@ Date:   Tue Oct 26 13:18:53 2010 -0400
 
     [itstool] Allow translatable elements inside untranslatable elements
 
- itstool |   57 +++++++++++++++++++++++++++++++++++----------------------
- 1 files changed, 35 insertions(+), 22 deletions(-)
+ itstool | 57 +++++++++++++++++++++++++++++++++++----------------------
+ 1 file changed, 35 insertions(+), 22 deletions(-)
 
 commit 9de7d8245dcf82f79ea7a041ee097fbf79757cc5
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2171,15 +2235,18 @@ Date:   Tue Oct 26 08:12:25 2010 -0400
 
     Adding build files and other miscellanea
 
- .gitignore      |   15 ++
- COPYING         |   19 ++
- COPYING.GPL3    |  674 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
- INSTALL         |  365 ++++++++++++++++++++++++++++++
- Makefile.am     |   13 +
- autogen.sh      |    3 +
- configure.ac    |    9 +
- its/Makefile.am |    5 +
- 8 files changed, 1103 insertions(+), 0 deletions(-)
+ .gitignore      |  15 ++
+ AUTHORS         |   0
+ COPYING         |  19 ++
+ COPYING.GPL3    | 674 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ INSTALL         | 365 ++++++++++++++++++++++++++++++
+ Makefile.am     |  13 ++
+ NEWS            |   0
+ README          |   0
+ autogen.sh      |   3 +
+ configure.ac    |   9 +
+ its/Makefile.am |   5 +
+ 11 files changed, 1103 insertions(+)
 
 commit 943cec6e34112cbaf15eee5597e3123b70b9724d
 Author: Shaun McCance <shaunm@gnome.org>
@@ -2187,7 +2254,7 @@ Date:   Mon Oct 25 22:45:00 2010 -0400
 
     Initial commit of itstool with docbook and mallard defs
 
- its/docbook.its |  525 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
- its/mallard.its |   36 ++++
- itstool         |  460 ++++++++++++++++++++++++++++++++++++++++++++++++
- 3 files changed, 1021 insertions(+), 0 deletions(-)
+ its/docbook.its | 525 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ its/mallard.its |  36 ++++
+ itstool         | 460 +++++++++++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 1021 insertions(+)
diff --git a/INSTALL b/INSTALL
index 7d1c323beae76333f523f6df31c47a87f5597edb..2099840756e6302d837dcd51b5dcd6262f7adb16 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,8 +1,8 @@
 Installation Instructions
 *************************
 
-Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
-2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation,
+Inc.
 
    Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright
@@ -12,8 +12,8 @@ without warranty of any kind.
 Basic Installation
 ==================
 
-   Briefly, the shell commands `./configure; make; make install' should
-configure, build, and install this package.  The following
+   Briefly, the shell command `./configure && make && make install'
+should configure, build, and install this package.  The following
 more-detailed instructions are generic; see the `README' file for
 instructions specific to this package.  Some packages provide this
 `INSTALL' file but do not implement all of the features documented
@@ -226,6 +226,11 @@ order to use an ANSI C compiler:
 
 and if that doesn't work, install pre-built binaries of GCC for HP-UX.
 
+   HP-UX `make' updates targets which have the same time stamps as
+their prerequisites, which makes it generally unusable when shipped
+generated files such as `configure' are involved.  Use GNU `make'
+instead.
+
    On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
 parse its `<wchar.h>' header file.  The option `-nodtk' can be used as
 a workaround.  If GNU CC is not installed, it is therefore recommended
@@ -304,9 +309,10 @@ causes the specified `gcc' to be used as the C compiler (unless it is
 overridden in the site shell script).
 
 Unfortunately, this technique does not work for `CONFIG_SHELL' due to
-an Autoconf bug.  Until the bug is fixed you can use this workaround:
+an Autoconf limitation.  Until the limitation is lifted, you can use
+this workaround:
 
-     CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
+     CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
 
 `configure' Invocation
 ======================
@@ -362,4 +368,3 @@ operates.
 
 `configure' also accepts some other, not widely useful, options.  Run
 `configure --help' for more details.
-
index c4efc156063e73284beb80dda10a5ba4220326e9..15c28cff2ae869e8f1d2e945aaa4b647a770c8d8 100644 (file)
@@ -10,7 +10,8 @@ EXTRA_DIST =          \
        $(bin_SCRIPTS)  \
        itstool.in      \
        $(man_MANS)     \
-       itstool.1.in
+       itstool.1.in    \
+       setup.py
 
 ChangeLog:
        @if test -f $(top_srcdir)/.git/HEAD; then \
index 1a8cb7a9fc6661e69151d0e2bce8b58767551087..b1ad054c1cdc3569dd011aecc63e79479de3f690 100644 (file)
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.15 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
+# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 @SET_MAKE@
 
 VPATH = @srcdir@
+am__is_gnu_make = { \
+  if test -z '$(MAKELEVEL)'; then \
+    false; \
+  elif test -n '$(MAKE_HOST)'; then \
+    true; \
+  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+    true; \
+  else \
+    false; \
+  fi; \
+}
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \  ]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -33,18 +87,16 @@ NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
 subdir = .
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
-       $(srcdir)/Makefile.in $(srcdir)/itstool.1.in \
-       $(srcdir)/itstool.in $(top_srcdir)/configure AUTHORS COPYING \
-       ChangeLog INSTALL NEWS install-sh missing
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
+       $(am__configure_deps) $(am__DIST_COMMON)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
  configure.lineno config.status.lineno
 mkinstalldirs = $(install_sh) -d
-CONFIG_CLEAN_FILES = itstool itstool.1
+CONFIG_CLEAN_FILES = itstool itstool.1 setup.py
 CONFIG_CLEAN_VPATH_FILES =
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
@@ -67,35 +119,86 @@ am__nobase_list = $(am__nobase_strip_setup); \
 am__base_list = \
   sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
   sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+  test -z "$$files" \
+    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+         $(am__cd) "$$dir" && rm -f $$files; }; \
+  }
 am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"
 SCRIPTS = $(bin_SCRIPTS)
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
 SOURCES =
 DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
-       html-recursive info-recursive install-data-recursive \
-       install-dvi-recursive install-exec-recursive \
-       install-html-recursive install-info-recursive \
-       install-pdf-recursive install-ps-recursive install-recursive \
-       installcheck-recursive installdirs-recursive pdf-recursive \
-       ps-recursive uninstall-recursive
+RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
+       ctags-recursive dvi-recursive html-recursive info-recursive \
+       install-data-recursive install-dvi-recursive \
+       install-exec-recursive install-html-recursive \
+       install-info-recursive install-pdf-recursive \
+       install-ps-recursive install-recursive installcheck-recursive \
+       installdirs-recursive pdf-recursive ps-recursive \
+       tags-recursive uninstall-recursive
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
 man1dir = $(mandir)/man1
 NROFF = nroff
 MANS = $(man_MANS)
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive        \
   distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
-       $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
-       distdir dist dist-all distcheck
+am__recursive_targets = \
+  $(RECURSIVE_TARGETS) \
+  $(RECURSIVE_CLEAN_TARGETS) \
+  $(am__extra_recursive_targets)
+AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
+       cscope distdir dist dist-all distcheck
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
+CSCOPE = cscope
 DIST_SUBDIRS = $(SUBDIRS)
+am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/itstool.1.in \
+       $(srcdir)/itstool.in $(srcdir)/setup.py.in AUTHORS COPYING \
+       ChangeLog INSTALL NEWS README install-sh missing
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
 am__remove_distdir = \
-  { test ! -d "$(distdir)" \
-    || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
-         && rm -fr "$(distdir)"; }; }
+  if test -d "$(distdir)"; then \
+    find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
+      && rm -rf "$(distdir)" \
+      || { sleep 5 && rm -rf "$(distdir)"; }; \
+  else :; fi
+am__post_remove_distdir = $(am__remove_distdir)
 am__relativize = \
   dir0=`pwd`; \
   sed_first='s,^\([^/]*\)/.*$$,\1,'; \
@@ -123,10 +226,14 @@ am__relativize = \
   reldir="$$dir2"
 GZIP_ENV = --best
 DIST_ARCHIVES = $(distdir).tar.bz2
+DIST_TARGETS = dist-bzip2
 distuninstallcheck_listfiles = find . -type f -print
+am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
+  | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
 distcleancheck_listfiles = find . -type f -print
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 AUTOCONF = @AUTOCONF@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
@@ -216,12 +323,13 @@ EXTRA_DIST = \
        $(bin_SCRIPTS)  \
        itstool.in      \
        $(man_MANS)     \
-       itstool.1.in
+       itstool.1.in    \
+       setup.py
 
 all: all-recursive
 
 .SUFFIXES:
-am--refresh:
+am--refresh: Makefile
        @:
 $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        @for dep in $?; do \
@@ -236,7 +344,6 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu Makefile
-.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -259,10 +366,15 @@ itstool: $(top_builddir)/config.status $(srcdir)/itstool.in
        cd $(top_builddir) && $(SHELL) ./config.status $@
 itstool.1: $(top_builddir)/config.status $(srcdir)/itstool.1.in
        cd $(top_builddir) && $(SHELL) ./config.status $@
+setup.py: $(top_builddir)/config.status $(srcdir)/setup.py.in
+       cd $(top_builddir) && $(SHELL) ./config.status $@
 install-binSCRIPTS: $(bin_SCRIPTS)
        @$(NORMAL_INSTALL)
-       test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
        @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || list=; \
+       if test -n "$$list"; then \
+         echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+         $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+       fi; \
        for p in $$list; do \
          if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
          if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
@@ -290,16 +402,21 @@ uninstall-binSCRIPTS:
        @list='$(bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \
        files=`for p in $$list; do echo "$$p"; done | \
               sed -e 's,.*/,,;$(transform)'`; \
-       test -n "$$list" || exit 0; \
-       echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
-       cd "$(DESTDIR)$(bindir)" && rm -f $$files
+       dir='$(DESTDIR)$(bindir)'; $(am__uninstall_files_from_dir)
 install-man1: $(man_MANS)
        @$(NORMAL_INSTALL)
-       test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
-       @list=''; test -n "$(man1dir)" || exit 0; \
-       { for i in $$list; do echo "$$i"; done; \
-       l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
-         sed -n '/\.1[a-z]*$$/p'; \
+       @list1=''; \
+       list2='$(man_MANS)'; \
+       test -n "$(man1dir)" \
+         && test -n "`echo $$list1$$list2`" \
+         || exit 0; \
+       echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+       $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+       { for i in $$list1; do echo "$$i"; done;  \
+       if test -n "$$list2"; then \
+         for i in $$list2; do echo "$$i"; done \
+           | sed -n '/\.1[a-z]*$$/p'; \
+       fi; \
        } | while read p; do \
          if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
          echo "$$d$$p"; echo "$$p"; \
@@ -328,27 +445,28 @@ uninstall-man1:
          sed -n '/\.1[a-z]*$$/p'; \
        } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
              -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
-       test -z "$$files" || { \
-         echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \
-         cd "$(DESTDIR)$(man1dir)" && rm -f $$files; }
+       dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
 
 # This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-#     (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
-       @fail= failcom='exit 1'; \
-       for f in x $$MAKEFLAGS; do \
-         case $$f in \
-           *=* | --[!k]*);; \
-           *k*) failcom='fail=yes';; \
-         esac; \
-       done; \
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+#     (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(am__recursive_targets):
+       @fail=; \
+       if $(am__make_keepgoing); then \
+         failcom='fail=yes'; \
+       else \
+         failcom='exit 1'; \
+       fi; \
        dot_seen=no; \
        target=`echo $@ | sed s/-recursive//`; \
-       list='$(SUBDIRS)'; for subdir in $$list; do \
+       case "$@" in \
+         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+         *) list='$(SUBDIRS)' ;; \
+       esac; \
+       for subdir in $$list; do \
          echo "Making $$target in $$subdir"; \
          if test "$$subdir" = "."; then \
            dot_seen=yes; \
@@ -363,57 +481,12 @@ $(RECURSIVE_TARGETS):
          $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
        fi; test -z "$$fail"
 
-$(RECURSIVE_CLEAN_TARGETS):
-       @fail= failcom='exit 1'; \
-       for f in x $$MAKEFLAGS; do \
-         case $$f in \
-           *=* | --[!k]*);; \
-           *k*) failcom='fail=yes';; \
-         esac; \
-       done; \
-       dot_seen=no; \
-       case "$@" in \
-         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
-         *) list='$(SUBDIRS)' ;; \
-       esac; \
-       rev=''; for subdir in $$list; do \
-         if test "$$subdir" = "."; then :; else \
-           rev="$$subdir $$rev"; \
-         fi; \
-       done; \
-       rev="$$rev ."; \
-       target=`echo $@ | sed s/-recursive//`; \
-       for subdir in $$rev; do \
-         echo "Making $$target in $$subdir"; \
-         if test "$$subdir" = "."; then \
-           local_target="$$target-am"; \
-         else \
-           local_target="$$target"; \
-         fi; \
-         ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-         || eval $$failcom; \
-       done && test -z "$$fail"
-tags-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
-       done
-ctags-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
-       done
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-recursive
+TAGS: tags
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
        if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
@@ -429,12 +502,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
          fi; \
        done; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -446,15 +514,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-recursive
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -463,24 +527,33 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscope: cscope.files
+       test ! -s cscope.files \
+         || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
+clean-cscope:
+       -rm -f cscope.files
+cscope.files: clean-cscope cscopelist
+cscopelist: cscopelist-recursive
+
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
+       case "$(srcdir)" in \
+         [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+         *) sdir=$(subdir)/$(srcdir) ;; \
+       esac; \
+       for i in $$list; do \
+         if test -f "$$i"; then \
+           echo "$(subdir)/$$i"; \
+         else \
+           echo "$$sdir/$$i"; \
+         fi; \
+       done >> $(top_builddir)/cscope.files
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+       -rm -f cscope.out cscope.in.out cscope.po.out cscope.files
 
 distdir: $(DISTFILES)
-       @list='$(MANS)'; if test -n "$$list"; then \
-         list=`for p in $$list; do \
-           if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
-           if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
-         if test -n "$$list" && \
-           grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
-           echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
-           grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
-           echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
-           echo "       typically \`make maintainer-clean' will remove them" >&2; \
-           exit 1; \
-         else :; fi; \
-       else :; fi
        $(am__remove_distdir)
        test -d "$(distdir)" || mkdir "$(distdir)"
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
@@ -514,13 +587,10 @@ distdir: $(DISTFILES)
        done
        @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
          if test "$$subdir" = .; then :; else \
-           test -d "$(distdir)/$$subdir" \
-           || $(MKDIR_P) "$(distdir)/$$subdir" \
-           || exit 1; \
-         fi; \
-       done
-       @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-         if test "$$subdir" = .; then :; else \
+           $(am__make_dryrun) \
+             || test -d "$(distdir)/$$subdir" \
+             || $(MKDIR_P) "$(distdir)/$$subdir" \
+             || exit 1; \
            dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
            $(am__relativize); \
            new_distdir=$$reldir; \
@@ -548,36 +618,42 @@ distdir: $(DISTFILES)
          ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
        || chmod -R a+r "$(distdir)"
 dist-gzip: distdir
-       tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
-       $(am__remove_distdir)
+       tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
+       $(am__post_remove_distdir)
 dist-bzip2: distdir
-       tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
-       $(am__remove_distdir)
+       tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
+       $(am__post_remove_distdir)
 
-dist-lzma: distdir
-       tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
-       $(am__remove_distdir)
+dist-lzip: distdir
+       tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
+       $(am__post_remove_distdir)
 
 dist-xz: distdir
-       tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
-       $(am__remove_distdir)
+       tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
+       $(am__post_remove_distdir)
 
 dist-tarZ: distdir
+       @echo WARNING: "Support for distribution archives compressed with" \
+                      "legacy program 'compress' is deprecated." >&2
+       @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
        tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
-       $(am__remove_distdir)
+       $(am__post_remove_distdir)
 
 dist-shar: distdir
-       shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
-       $(am__remove_distdir)
+       @echo WARNING: "Support for shar distribution archives is" \
+                      "deprecated." >&2
+       @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
+       shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz
+       $(am__post_remove_distdir)
 
 dist-zip: distdir
        -rm -f $(distdir).zip
        zip -rq $(distdir).zip $(distdir)
-       $(am__remove_distdir)
+       $(am__post_remove_distdir)
 
-dist dist-all: distdir
-       tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
-       $(am__remove_distdir)
+dist dist-all:
+       $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
+       $(am__post_remove_distdir)
 
 # This target untars the dist file and tries a VPATH configuration.  Then
 # it guarantees that the distribution is self-contained by making another
@@ -585,31 +661,33 @@ dist dist-all: distdir
 distcheck: dist
        case '$(DIST_ARCHIVES)' in \
        *.tar.gz*) \
-         GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
+         eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
        *.tar.bz2*) \
          bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
-       *.tar.lzma*) \
-         lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
+       *.tar.lz*) \
+         lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
        *.tar.xz*) \
          xz -dc $(distdir).tar.xz | $(am__untar) ;;\
        *.tar.Z*) \
          uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
        *.shar.gz*) \
-         GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
+         eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
        *.zip*) \
          unzip $(distdir).zip ;;\
        esac
-       chmod -R a-w $(distdir); chmod a+w $(distdir)
-       mkdir $(distdir)/_build
-       mkdir $(distdir)/_inst
+       chmod -R a-w $(distdir)
+       chmod u+w $(distdir)
+       mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
        chmod a-w $(distdir)
        test -d $(distdir)/_build || exit 0; \
        dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
          && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
          && am__cwd=`pwd` \
-         && $(am__cd) $(distdir)/_build \
-         && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+         && $(am__cd) $(distdir)/_build/sub \
+         && ../../configure \
+           $(AM_DISTCHECK_CONFIGURE_FLAGS) \
            $(DISTCHECK_CONFIGURE_FLAGS) \
+           --srcdir=../.. --prefix="$$dc_install_base" \
          && $(MAKE) $(AM_MAKEFLAGS) \
          && $(MAKE) $(AM_MAKEFLAGS) dvi \
          && $(MAKE) $(AM_MAKEFLAGS) check \
@@ -632,13 +710,21 @@ distcheck: dist
          && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
          && cd "$$am__cwd" \
          || exit 1
-       $(am__remove_distdir)
+       $(am__post_remove_distdir)
        @(echo "$(distdir) archives ready for distribution: "; \
          list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
          sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
 distuninstallcheck:
-       @$(am__cd) '$(distuninstallcheck_dir)' \
-       && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
+       @test -n '$(distuninstallcheck_dir)' || { \
+         echo 'ERROR: trying to run $@ with an empty' \
+              '$$(distuninstallcheck_dir)' >&2; \
+         exit 1; \
+       }; \
+       $(am__cd) '$(distuninstallcheck_dir)' || { \
+         echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
+         exit 1; \
+       }; \
+       test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
           || { echo "ERROR: files left after uninstall:" ; \
                if test -n "$(DESTDIR)"; then \
                  echo "  (check DESTDIR support)"; \
@@ -672,10 +758,15 @@ install-am: all-am
 
 installcheck: installcheck-recursive
 install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-         install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-         `test -z '$(STRIP)' || \
-           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+       if test -z '$(STRIP)'; then \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+             install; \
+       else \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+           "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+       fi
 mostlyclean-generic:
 
 clean-generic:
@@ -758,25 +849,26 @@ uninstall-am: uninstall-binSCRIPTS uninstall-man
 
 uninstall-man: uninstall-man1
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
-       install-am install-strip tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
-       all all-am am--refresh check check-am clean clean-generic \
-       ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \
-       dist-lzma dist-shar dist-tarZ dist-xz dist-zip distcheck \
-       distclean distclean-generic distclean-tags distcleancheck \
-       distdir distuninstallcheck dvi dvi-am html html-am info \
-       info-am install install-am install-binSCRIPTS install-data \
-       install-data-am install-dvi install-dvi-am install-exec \
-       install-exec-am install-html install-html-am install-info \
-       install-info-am install-man install-man1 install-pdf \
-       install-pdf-am install-ps install-ps-am install-strip \
-       installcheck installcheck-am installdirs installdirs-am \
-       maintainer-clean maintainer-clean-generic mostlyclean \
-       mostlyclean-generic pdf pdf-am ps ps-am tags tags-recursive \
-       uninstall uninstall-am uninstall-binSCRIPTS uninstall-man \
-       uninstall-man1
+.MAKE: $(am__recursive_targets) install-am install-strip
+
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
+       am--refresh check check-am clean clean-cscope clean-generic \
+       cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
+       dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \
+       distcheck distclean distclean-generic distclean-tags \
+       distcleancheck distdir distuninstallcheck dvi dvi-am html \
+       html-am info info-am install install-am install-binSCRIPTS \
+       install-data install-data-am install-dvi install-dvi-am \
+       install-exec install-exec-am install-html install-html-am \
+       install-info install-info-am install-man install-man1 \
+       install-pdf install-pdf-am install-ps install-ps-am \
+       install-strip installcheck installcheck-am installdirs \
+       installdirs-am maintainer-clean maintainer-clean-generic \
+       mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
+       tags-am uninstall uninstall-am uninstall-binSCRIPTS \
+       uninstall-man uninstall-man1
+
+.PRECIOUS: Makefile
 
 
 ChangeLog:
diff --git a/NEWS b/NEWS
index e778b6ea9a39ac4469e3244c7f793f2e0337e021..1f5a415f1ea1d48f29aee6f81a8ed379d4841568 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,11 @@
+2.0.3
+=====
+* Added Python 3 support. Keeping Python 2 support for now. (Virgil Dupras)
+* Fixed --keep-entities mode after some libxml2 changes.
+* Added --path option for extra paths for ITS files.
+* Don't error out (except under -s) for mismatched placeholders.
+* Fixed UTF-8 handling for translated attributes.
+
 2.0.2
 =====
 * Fixed crash in locale filter and drop rule, #715116
index 6a6e68ad8ad0c4c8c1308280d1e779400595a543..da064cb5ddf4b5b13b22e64980e56dd9ccbe08eb 100644 (file)
@@ -1,7 +1,7 @@
-# generated automatically by aclocal 1.11.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.15 -*- Autoconf -*-
+
+# Copyright (C) 1996-2014 Free Software Foundation, Inc.
 
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2007, 2008, 2009  Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.66],,
-[m4_warning([this file was generated for autoconf 2.66.
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
+[m4_warning([this file was generated for autoconf 2.69.
 You have another version of autoconf.  It may work, but is not guaranteed to.
 If you have problems, you may need to regenerate the build system entirely.
-To do so, use the procedure documented by the package, typically `autoreconf'.])])
+To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# Copyright (C) 2002-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -31,10 +32,10 @@ To do so, use the procedure documented by the package, typically `autoreconf'.])
 # generated from the m4 files accompanying Automake X.Y.
 # (This private macro should not be called outside this file.)
 AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.11'
+[am__api_version='1.15'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.11.1], [],
+m4_if([$1], [1.15], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -50,22 +51,22 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.11.1])dnl
+[AM_AUTOMAKE_VERSION([1.15])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
 # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
-# $ac_aux_dir to `$srcdir/foo'.  In other projects, it is set to
-# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
+# $ac_aux_dir to '$srcdir/foo'.  In other projects, it is set to
+# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
 #
 # Of course, Automake must honor this variable whenever it calls a
 # tool from the auxiliary directory.  The problem is that $srcdir (and
@@ -84,7 +85,7 @@ _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 #
 # The reason of the latter failure is that $top_srcdir and $ac_aux_dir
 # are both prefixed by $srcdir.  In an in-source build this is usually
-# harmless because $srcdir is `.', but things will broke when you
+# harmless because $srcdir is '.', but things will broke when you
 # start a VPATH build or use an absolute $srcdir.
 #
 # So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
@@ -102,26 +103,28 @@ _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 # configured tree to be moved without reconfiguration.
 
 AC_DEFUN([AM_AUX_DIR_EXPAND],
-[dnl Rely on autoconf to set up CDPATH properly.
-AC_PREREQ([2.50])dnl
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
+[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
+# Expand $ac_aux_dir to an absolute path.
+am_aux_dir=`cd "$ac_aux_dir" && pwd`
 ])
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
+# Copyright (C) 1996-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 16
-
 # This macro actually does too much.  Some checks are only needed if
 # your package does certain things.  But this isn't really a big deal.
 
+dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
+m4_define([AC_PROG_CC],
+m4_defn([AC_PROG_CC])
+[_AM_PROG_CC_C_O
+])
+
 # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
 # AM_INIT_AUTOMAKE([OPTIONS])
 # -----------------------------------------------
@@ -134,7 +137,7 @@ am_aux_dir=`cd $ac_aux_dir && pwd`
 # arguments mandatory, and then we can depend on a new Autoconf
 # release and drop the old call support.
 AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.62])dnl
+[AC_PREREQ([2.65])dnl
 dnl Autoconf wants to disallow AM_ names.  We explicitly allow
 dnl the ones we care about.
 m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
@@ -163,33 +166,42 @@ AC_SUBST([CYGPATH_W])
 # Define the identity of the package.
 dnl Distinguish between old-style and new-style calls.
 m4_ifval([$2],
-[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
+[AC_DIAGNOSE([obsolete],
+             [$0: two- and three-arguments forms are deprecated.])
+m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
  AC_SUBST([PACKAGE], [$1])dnl
  AC_SUBST([VERSION], [$2])],
 [_AM_SET_OPTIONS([$1])dnl
 dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
-m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
+m4_if(
+  m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
+  [ok:ok],,
   [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
  AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
  AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
 
 _AM_IF_OPTION([no-define],,
-[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
- AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
+[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
+ AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
 
 # Some tools Automake needs.
 AC_REQUIRE([AM_SANITY_CHECK])dnl
 AC_REQUIRE([AC_ARG_PROGRAM])dnl
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
-AM_MISSING_PROG(AUTOCONF, autoconf)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
-AM_MISSING_PROG(AUTOHEADER, autoheader)
-AM_MISSING_PROG(MAKEINFO, makeinfo)
+AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
+AM_MISSING_PROG([AUTOCONF], [autoconf])
+AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
+AM_MISSING_PROG([AUTOHEADER], [autoheader])
+AM_MISSING_PROG([MAKEINFO], [makeinfo])
 AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
 AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
-AC_REQUIRE([AM_PROG_MKDIR_P])dnl
-# We need awk for the "check" target.  The system "awk" is bad on
-# some platforms.
+AC_REQUIRE([AC_PROG_MKDIR_P])dnl
+# For better backward compatibility.  To be removed once Automake 1.9.x
+# dies out for good.  For more background, see:
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
+AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
+# We need awk for the "check" target (and possibly the TAP driver).  The
+# system "awk" is bad on some platforms.
 AC_REQUIRE([AC_PROG_AWK])dnl
 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
 AC_REQUIRE([AM_SET_LEADING_DOT])dnl
@@ -198,34 +210,82 @@ _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
                             [_AM_PROG_TAR([v7])])])
 _AM_IF_OPTION([no-dependencies],,
 [AC_PROVIDE_IFELSE([AC_PROG_CC],
-                 [_AM_DEPENDENCIES(CC)],
-                 [define([AC_PROG_CC],
-                         defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+                 [_AM_DEPENDENCIES([CC])],
+                 [m4_define([AC_PROG_CC],
+                            m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
 AC_PROVIDE_IFELSE([AC_PROG_CXX],
-                 [_AM_DEPENDENCIES(CXX)],
-                 [define([AC_PROG_CXX],
-                         defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+                 [_AM_DEPENDENCIES([CXX])],
+                 [m4_define([AC_PROG_CXX],
+                            m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
 AC_PROVIDE_IFELSE([AC_PROG_OBJC],
-                 [_AM_DEPENDENCIES(OBJC)],
-                 [define([AC_PROG_OBJC],
-                         defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
+                 [_AM_DEPENDENCIES([OBJC])],
+                 [m4_define([AC_PROG_OBJC],
+                            m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
+AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
+                 [_AM_DEPENDENCIES([OBJCXX])],
+                 [m4_define([AC_PROG_OBJCXX],
+                            m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
 ])
-_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
-dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
-dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This macro
-dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
+AC_REQUIRE([AM_SILENT_RULES])dnl
+dnl The testsuite driver may need to know about EXEEXT, so add the
+dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This
+dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
 AC_CONFIG_COMMANDS_PRE(dnl
 [m4_provide_if([_AM_COMPILER_EXEEXT],
   [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
+
+# POSIX will say in a future version that running "rm -f" with no argument
+# is OK; and we want to be able to make that assumption in our Makefile
+# recipes.  So use an aggressive probe to check that the usage we want is
+# actually supported "in the wild" to an acceptable degree.
+# See automake bug#10828.
+# To make any issue more visible, cause the running configure to be aborted
+# by default if the 'rm' program in use doesn't match our expectations; the
+# user can still override this though.
+if rm -f && rm -fr && rm -rf; then : OK; else
+  cat >&2 <<'END'
+Oops!
+
+Your 'rm' program seems unable to run without file operands specified
+on the command line, even when the '-f' option is present.  This is contrary
+to the behaviour of most rm programs out there, and not conforming with
+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
+
+Please tell bug-automake@gnu.org about your system, including the value
+of your $PATH and any error possibly output before this message.  This
+can help us improve future automake versions.
+
+END
+  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
+    echo 'Configuration will proceed anyway, since you have set the' >&2
+    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
+    echo >&2
+  else
+    cat >&2 <<'END'
+Aborting the configuration process, to ensure you take notice of the issue.
+
+You can download and install GNU coreutils to get an 'rm' implementation
+that behaves properly: <http://www.gnu.org/software/coreutils/>.
+
+If you want to complete the configuration process using your problematic
+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
+to "yes", and re-run configure.
+
+END
+    AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
+  fi
+fi
+dnl The trailing newline in this macro's definition is deliberate, for
+dnl backward compatibility and to allow trailing 'dnl'-style comments
+dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
 ])
 
-dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
+dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
 dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
 dnl mangled by Autoconf and run in a shell conditional statement.
 m4_define([_AC_COMPILER_EXEEXT],
 m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
 
-
 # When config.status generates a header, we must update the stamp-h file.
 # This file resides in the same directory as the config header
 # that is generated.  The stamp files are numbered to have different names.
@@ -247,7 +307,7 @@ for _am_header in $config_headers :; do
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001, 2003, 2005, 2008  Free Software Foundation, Inc.
+# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -258,7 +318,7 @@ echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_co
 # Define $install_sh.
 AC_DEFUN([AM_PROG_INSTALL_SH],
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh}" != xset; then
+if test x"${install_sh+set}" != xset; then
   case $am_aux_dir in
   *\ * | *\    *)
     install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
@@ -266,16 +326,14 @@ if test x"${install_sh}" != xset; then
     install_sh="\${SHELL} $am_aux_dir/install-sh"
   esac
 fi
-AC_SUBST(install_sh)])
+AC_SUBST([install_sh])])
 
-# Copyright (C) 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2003-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 2
-
 # Check whether the underlying file-system supports filenames
 # with a leading dot.  For instance MS-DOS doesn't.
 AC_DEFUN([AM_SET_LEADING_DOT],
@@ -291,15 +349,12 @@ AC_SUBST([am__leading_dot])])
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
+# Copyright (C) 1997-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 6
-
 # AM_MISSING_PROG(NAME, PROGRAM)
 # ------------------------------
 AC_DEFUN([AM_MISSING_PROG],
@@ -307,11 +362,10 @@ AC_DEFUN([AM_MISSING_PROG],
 $1=${$1-"${am_missing_run}$2"}
 AC_SUBST($1)])
 
-
 # AM_MISSING_HAS_RUN
 # ------------------
-# Define MISSING if not defined so far and test if it supports --run.
-# If it does, set am_missing_run to use it, otherwise, to nothing.
+# Define MISSING if not defined so far and test if it is modern enough.
+# If it is, set am_missing_run to use it, otherwise, to nothing.
 AC_DEFUN([AM_MISSING_HAS_RUN],
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
 AC_REQUIRE_AUX_FILE([missing])dnl
@@ -324,63 +378,35 @@ if test x"${MISSING+set}" != xset; then
   esac
 fi
 # Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
-  am_missing_run="$MISSING --run "
+if eval "$MISSING --is-lightweight"; then
+  am_missing_run="$MISSING "
 else
   am_missing_run=
-  AC_MSG_WARN([`missing' script is too old or missing])
+  AC_MSG_WARN(['missing' script is too old or missing])
 fi
 ])
 
-# Copyright (C) 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_PROG_MKDIR_P
-# ---------------
-# Check for `mkdir -p'.
-AC_DEFUN([AM_PROG_MKDIR_P],
-[AC_PREREQ([2.60])dnl
-AC_REQUIRE([AC_PROG_MKDIR_P])dnl
-dnl Automake 1.8 to 1.9.6 used to define mkdir_p.  We now use MKDIR_P,
-dnl while keeping a definition of mkdir_p for backward compatibility.
-dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
-dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
-dnl Makefile.ins that do not define MKDIR_P, so we do our own
-dnl adjustment using top_builddir (which is defined more often than
-dnl MKDIR_P).
-AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
-case $mkdir_p in
-  [[\\/$]]* | ?:[[\\/]]*) ;;
-  */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-])
-
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001, 2002, 2003, 2005, 2008  Free Software Foundation, Inc.
+# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 4
-
 # _AM_MANGLE_OPTION(NAME)
 # -----------------------
 AC_DEFUN([_AM_MANGLE_OPTION],
 [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
 
 # _AM_SET_OPTION(NAME)
-# ------------------------------
+# --------------------
 # Set option NAME.  Presently that only means defining a flag for this option.
 AC_DEFUN([_AM_SET_OPTION],
-[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
+[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
 
 # _AM_SET_OPTIONS(OPTIONS)
-# ----------------------------------
+# ------------------------
 # OPTIONS is a space-separated list of Automake options.
 AC_DEFUN([_AM_SET_OPTIONS],
 [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
@@ -391,13 +417,13 @@ AC_DEFUN([_AM_SET_OPTIONS],
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008, 2009
-# Free Software Foundation, Inc.
+# Copyright (C) 1999-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
+
 # AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
 # ---------------------------------------------------------------------------
 # Adds support for distributing Python modules and packages.  To
@@ -425,8 +451,10 @@ AC_DEFUN([AM_PATH_PYTHON],
   dnl Find a Python interpreter.  Python versions prior to 2.0 are not
   dnl supported. (2.0 was released on October 16, 2000).
   m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
-                    [python python2 python3 python3.0 python2.5 python2.4 python2.3 python2.2 dnl
-python2.1 python2.0])
+[python python2 python3 python3.3 python3.2 python3.1 python3.0 python2.7 dnl
+ python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0])
+
+  AC_ARG_VAR([PYTHON], [the Python interpreter])
 
   m4_if([$1],[],[
     dnl No version check is needed.
@@ -439,10 +467,11 @@ python2.1 python2.0])
     dnl A version check is needed.
     if test -n "$PYTHON"; then
       # If the user set $PYTHON, use it and don't search something else.
-      AC_MSG_CHECKING([whether $PYTHON version >= $1])
+      AC_MSG_CHECKING([whether $PYTHON version is >= $1])
       AM_PYTHON_CHECK_VERSION([$PYTHON], [$1],
-                             [AC_MSG_RESULT(yes)],
-                             [AC_MSG_ERROR(too old)])
+                             [AC_MSG_RESULT([yes])],
+                             [AC_MSG_RESULT([no])
+                              AC_MSG_ERROR([Python interpreter is too old])])
       am_display_PYTHON=$PYTHON
     else
       # Otherwise, try each interpreter until we find one that satisfies
@@ -491,6 +520,25 @@ python2.1 python2.0])
     [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`])
   AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform])
 
+  # Just factor out some code duplication.
+  am_python_setup_sysconfig="\
+import sys
+# Prefer sysconfig over distutils.sysconfig, for better compatibility
+# with python 3.x.  See automake bug#10227.
+try:
+    import sysconfig
+except ImportError:
+    can_use_sysconfig = 0
+else:
+    can_use_sysconfig = 1
+# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs:
+# <https://github.com/pypa/virtualenv/issues/118>
+try:
+    from platform import python_implementation
+    if python_implementation() == 'CPython' and sys.version[[:3]] == '2.7':
+        can_use_sysconfig = 0
+except ImportError:
+    pass"
 
   dnl Set up 4 directories:
 
@@ -498,9 +546,7 @@ python2.1 python2.0])
   dnl   site-packages directory, not the python standard library
   dnl   directory like in previous automake betas.  This behavior
   dnl   is more consistent with lispdir.m4 for example.
-  dnl Query distutils for this directory.  distutils does not exist in
-  dnl Python 1.5, so we fall back to the hardcoded directory if it
-  dnl doesn't work.
+  dnl Query distutils for this directory.
   AC_CACHE_CHECK([for $am_display_PYTHON script directory],
     [am_cv_python_pythondir],
     [if test "x$prefix" = xNONE
@@ -509,8 +555,14 @@ python2.1 python2.0])
      else
        am_py_prefix=$prefix
      fi
-     am_cv_python_pythondir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(0,0,prefix='$am_py_prefix'))" 2>/dev/null ||
-     echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
+     am_cv_python_pythondir=`$PYTHON -c "
+$am_python_setup_sysconfig
+if can_use_sysconfig:
+    sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
+else:
+    from distutils import sysconfig
+    sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
+sys.stdout.write(sitedir)"`
      case $am_cv_python_pythondir in
      $am_py_prefix*)
        am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
@@ -536,9 +588,7 @@ python2.1 python2.0])
 
   dnl pyexecdir -- directory for installing python extension modules
   dnl   (shared libraries)
-  dnl Query distutils for this directory.  distutils does not exist in
-  dnl Python 1.5, so we fall back to the hardcoded directory if it
-  dnl doesn't work.
+  dnl Query distutils for this directory.
   AC_CACHE_CHECK([for $am_display_PYTHON extension module directory],
     [am_cv_python_pyexecdir],
     [if test "x$exec_prefix" = xNONE
@@ -547,8 +597,14 @@ python2.1 python2.0])
      else
        am_py_exec_prefix=$exec_prefix
      fi
-     am_cv_python_pyexecdir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(1,0,prefix='$am_py_exec_prefix'))" 2>/dev/null ||
-     echo "$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
+     am_cv_python_pyexecdir=`$PYTHON -c "
+$am_python_setup_sysconfig
+if can_use_sysconfig:
+    sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'})
+else:
+    from distutils import sysconfig
+    sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix')
+sys.stdout.write(sitedir)"`
      case $am_cv_python_pyexecdir in
      $am_py_exec_prefix*)
        am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
@@ -596,7 +652,7 @@ for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]]
 sys.exit(sys.hexversion < minverhex)"
   AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])
 
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -615,22 +671,16 @@ AC_DEFUN([AM_RUN_LOG],
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
-# Free Software Foundation, Inc.
+# Copyright (C) 1996-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 5
-
 # AM_SANITY_CHECK
 # ---------------
 AC_DEFUN([AM_SANITY_CHECK],
 [AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftest.file
 # Reject unsafe characters in $srcdir or the absolute working directory
 # name.  Accept space and tab only in the latter.
 am_lf='
@@ -641,32 +691,40 @@ case `pwd` in
 esac
 case $srcdir in
   *[[\\\"\#\$\&\'\`$am_lf\ \   ]]*)
-    AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
+    AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
 esac
 
-# Do `set' in a subshell so we don't clobber the current shell's
+# Do 'set' in a subshell so we don't clobber the current shell's
 # arguments.  Must try -L first in case configure is actually a
 # symlink; some systems play weird games with the mod time of symlinks
 # (eg FreeBSD returns the mod time of the symlink's containing
 # directory).
 if (
-   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
-   if test "$[*]" = "X"; then
-      # -L didn't work.
-      set X `ls -t "$srcdir/configure" conftest.file`
-   fi
-   rm -f conftest.file
-   if test "$[*]" != "X $srcdir/configure conftest.file" \
-      && test "$[*]" != "X conftest.file $srcdir/configure"; then
-
-      # If neither matched, then we have a broken ls.  This can happen
-      # if, for instance, CONFIG_SHELL is bash and it inherits a
-      # broken ls alias from the environment.  This has actually
-      # happened.  Such a system could not be considered "sane".
-      AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
-alias in your environment])
-   fi
-
+   am_has_slept=no
+   for am_try in 1 2; do
+     echo "timestamp, slept: $am_has_slept" > conftest.file
+     set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
+     if test "$[*]" = "X"; then
+       # -L didn't work.
+       set X `ls -t "$srcdir/configure" conftest.file`
+     fi
+     if test "$[*]" != "X $srcdir/configure conftest.file" \
+       && test "$[*]" != "X conftest.file $srcdir/configure"; then
+
+       # If neither matched, then we have a broken ls.  This can happen
+       # if, for instance, CONFIG_SHELL is bash and it inherits a
+       # broken ls alias from the environment.  This has actually
+       # happened.  Such a system could not be considered "sane".
+       AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
+  alias in your environment])
+     fi
+     if test "$[2]" = conftest.file || test $am_try -eq 2; then
+       break
+     fi
+     # Just in case.
+     sleep 1
+     am_has_slept=yes
+   done
    test "$[2]" = conftest.file
    )
 then
@@ -676,9 +734,85 @@ else
    AC_MSG_ERROR([newly created file is older than distributed files!
 Check your system clock])
 fi
-AC_MSG_RESULT(yes)])
+AC_MSG_RESULT([yes])
+# If we didn't sleep, we still need to ensure time stamps of config.status and
+# generated files are strictly newer.
+am_sleep_pid=
+if grep 'slept: no' conftest.file >/dev/null 2>&1; then
+  ( sleep 1 ) &
+  am_sleep_pid=$!
+fi
+AC_CONFIG_COMMANDS_PRE(
+  [AC_MSG_CHECKING([that generated files are newer than configure])
+   if test -n "$am_sleep_pid"; then
+     # Hide warnings about reused PIDs.
+     wait $am_sleep_pid 2>/dev/null
+   fi
+   AC_MSG_RESULT([done])])
+rm -f conftest.file
+])
+
+# Copyright (C) 2009-2014 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_SILENT_RULES([DEFAULT])
+# --------------------------
+# Enable less verbose build rules; with the default set to DEFAULT
+# ("yes" being less verbose, "no" or empty being verbose).
+AC_DEFUN([AM_SILENT_RULES],
+[AC_ARG_ENABLE([silent-rules], [dnl
+AS_HELP_STRING(
+  [--enable-silent-rules],
+  [less verbose build output (undo: "make V=1")])
+AS_HELP_STRING(
+  [--disable-silent-rules],
+  [verbose build output (undo: "make V=0")])dnl
+])
+case $enable_silent_rules in @%:@ (((
+  yes) AM_DEFAULT_VERBOSITY=0;;
+   no) AM_DEFAULT_VERBOSITY=1;;
+    *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
+esac
+dnl
+dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
+dnl do not support nested variable expansions.
+dnl See automake bug#9928 and bug#10237.
+am_make=${MAKE-make}
+AC_CACHE_CHECK([whether $am_make supports nested variables],
+   [am_cv_make_support_nested_variables],
+   [if AS_ECHO([['TRUE=$(BAR$(V))
+BAR0=false
+BAR1=true
+V=1
+am__doit:
+       @$(TRUE)
+.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
+  am_cv_make_support_nested_variables=yes
+else
+  am_cv_make_support_nested_variables=no
+fi])
+if test $am_cv_make_support_nested_variables = yes; then
+  dnl Using '$V' instead of '$(V)' breaks IRIX make.
+  AM_V='$(V)'
+  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
+else
+  AM_V=$AM_DEFAULT_VERBOSITY
+  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
+fi
+AC_SUBST([AM_V])dnl
+AM_SUBST_NOTMAKE([AM_V])dnl
+AC_SUBST([AM_DEFAULT_V])dnl
+AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
+AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
+AM_BACKSLASH='\'
+AC_SUBST([AM_BACKSLASH])dnl
+_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
+])
 
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -686,34 +820,32 @@ AC_MSG_RESULT(yes)])
 
 # AM_PROG_INSTALL_STRIP
 # ---------------------
-# One issue with vendor `install' (even GNU) is that you can't
+# One issue with vendor 'install' (even GNU) is that you can't
 # specify the program used to strip binaries.  This is especially
 # annoying in cross-compiling environments, where the build's strip
 # is unlikely to handle the host's binaries.
 # Fortunately install-sh will honor a STRIPPROG variable, so we
-# always use install-sh in `make install-strip', and initialize
+# always use install-sh in "make install-strip", and initialize
 # STRIPPROG with the value of the STRIP variable (set by the user).
 AC_DEFUN([AM_PROG_INSTALL_STRIP],
 [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'.  However `strip' might not be the right
+# Installed binaries are usually stripped using 'strip' when the user
+# run "make install-strip".  However 'strip' might not be the right
 # tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
+# will honor the 'STRIP' environment variable to overrule this program.
+dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
 if test "$cross_compiling" != no; then
   AC_CHECK_TOOL([STRIP], [strip], :)
 fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006, 2008  Free Software Foundation, Inc.
+# Copyright (C) 2006-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 2
-
 # _AM_SUBST_NOTMAKE(VARIABLE)
 # ---------------------------
 # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
@@ -721,24 +853,22 @@ AC_SUBST([INSTALL_STRIP_PROGRAM])])
 AC_DEFUN([_AM_SUBST_NOTMAKE])
 
 # AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
+# --------------------------
 # Public sister of _AM_SUBST_NOTMAKE.
 AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2004-2014 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 2
-
 # _AM_PROG_TAR(FORMAT)
 # --------------------
 # Check how to create a tarball in format FORMAT.
-# FORMAT should be one of `v7', `ustar', or `pax'.
+# FORMAT should be one of 'v7', 'ustar', or 'pax'.
 #
 # Substitute a variable $(am__tar) that is a command
 # writing to stdout a FORMAT-tarball containing the directory
@@ -748,75 +878,114 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 # Substitute a variable $(am__untar) that extract such
 # a tarball read from stdin.
 #     $(am__untar) < result.tar
+#
 AC_DEFUN([_AM_PROG_TAR],
-[# Always define AMTAR for backward compatibility.
-AM_MISSING_PROG([AMTAR], [tar])
-m4_if([$1], [v7],
-     [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
-     [m4_case([$1], [ustar],, [pax],,
-              [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
-_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of `-'.
-for _am_tool in $_am_tools
-do
-  case $_am_tool in
-  gnutar)
-    for _am_tar in tar gnutar gtar;
-    do
-      AM_RUN_LOG([$_am_tar --version]) && break
-    done
-    am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
-    am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
-    am__untar="$_am_tar -xf -"
-    ;;
-  plaintar)
-    # Must skip GNU tar: if it does not support --format= it doesn't create
-    # ustar tarball either.
-    (tar --version) >/dev/null 2>&1 && continue
-    am__tar='tar chf - "$$tardir"'
-    am__tar_='tar chf - "$tardir"'
-    am__untar='tar xf -'
-    ;;
-  pax)
-    am__tar='pax -L -x $1 -w "$$tardir"'
-    am__tar_='pax -L -x $1 -w "$tardir"'
-    am__untar='pax -r'
-    ;;
-  cpio)
-    am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
-    am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
-    am__untar='cpio -i -H $1 -d'
-    ;;
-  none)
-    am__tar=false
-    am__tar_=false
-    am__untar=false
-    ;;
-  esac
+[# Always define AMTAR for backward compatibility.  Yes, it's still used
+# in the wild :-(  We should find a proper way to deprecate it ...
+AC_SUBST([AMTAR], ['$${TAR-tar}'])
 
-  # If the value was cached, stop now.  We just wanted to have am__tar
-  # and am__untar set.
-  test -n "${am_cv_prog_tar_$1}" && break
+# We'll loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
 
-  # tar/untar a dummy directory, and stop if the command works
-  rm -rf conftest.dir
-  mkdir conftest.dir
-  echo GrepMe > conftest.dir/file
-  AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+m4_if([$1], [v7],
+  [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
+
+  [m4_case([$1],
+    [ustar],
+     [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
+      # There is notably a 21 bits limit for the UID and the GID.  In fact,
+      # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
+      # and bug#13588).
+      am_max_uid=2097151 # 2^21 - 1
+      am_max_gid=$am_max_uid
+      # The $UID and $GID variables are not portable, so we need to resort
+      # to the POSIX-mandated id(1) utility.  Errors in the 'id' calls
+      # below are definitely unexpected, so allow the users to see them
+      # (that is, avoid stderr redirection).
+      am_uid=`id -u || echo unknown`
+      am_gid=`id -g || echo unknown`
+      AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
+      if test $am_uid -le $am_max_uid; then
+         AC_MSG_RESULT([yes])
+      else
+         AC_MSG_RESULT([no])
+         _am_tools=none
+      fi
+      AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
+      if test $am_gid -le $am_max_gid; then
+         AC_MSG_RESULT([yes])
+      else
+        AC_MSG_RESULT([no])
+        _am_tools=none
+      fi],
+
+  [pax],
+    [],
+
+  [m4_fatal([Unknown tar format])])
+
+  AC_MSG_CHECKING([how to create a $1 tar archive])
+
+  # Go ahead even if we have the value already cached.  We do so because we
+  # need to set the values for the 'am__tar' and 'am__untar' variables.
+  _am_tools=${am_cv_prog_tar_$1-$_am_tools}
+
+  for _am_tool in $_am_tools; do
+    case $_am_tool in
+    gnutar)
+      for _am_tar in tar gnutar gtar; do
+        AM_RUN_LOG([$_am_tar --version]) && break
+      done
+      am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
+      am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
+      am__untar="$_am_tar -xf -"
+      ;;
+    plaintar)
+      # Must skip GNU tar: if it does not support --format= it doesn't create
+      # ustar tarball either.
+      (tar --version) >/dev/null 2>&1 && continue
+      am__tar='tar chf - "$$tardir"'
+      am__tar_='tar chf - "$tardir"'
+      am__untar='tar xf -'
+      ;;
+    pax)
+      am__tar='pax -L -x $1 -w "$$tardir"'
+      am__tar_='pax -L -x $1 -w "$tardir"'
+      am__untar='pax -r'
+      ;;
+    cpio)
+      am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
+      am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
+      am__untar='cpio -i -H $1 -d'
+      ;;
+    none)
+      am__tar=false
+      am__tar_=false
+      am__untar=false
+      ;;
+    esac
+
+    # If the value was cached, stop now.  We just wanted to have am__tar
+    # and am__untar set.
+    test -n "${am_cv_prog_tar_$1}" && break
+
+    # tar/untar a dummy directory, and stop if the command works.
+    rm -rf conftest.dir
+    mkdir conftest.dir
+    echo GrepMe > conftest.dir/file
+    AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+    rm -rf conftest.dir
+    if test -s conftest.tar; then
+      AM_RUN_LOG([$am__untar <conftest.tar])
+      AM_RUN_LOG([cat conftest.dir/file])
+      grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+    fi
+  done
   rm -rf conftest.dir
-  if test -s conftest.tar; then
-    AM_RUN_LOG([$am__untar <conftest.tar])
-    grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
-  fi
-done
-rm -rf conftest.dir
 
-AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+  AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
+  AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+
 AC_SUBST([am__tar])
 AC_SUBST([am__untar])
 ]) # _AM_PROG_TAR
index a9b8250e5838c4c9b9e38a5c7c2a6d5b59f16c12..5766b759d2d618493f631eec651be3b4e83cc77d 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,11 +1,9 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.66 for itstool 2.0.2.
+# Generated by GNU Autoconf 2.69 for itstool 2.0.3.
 #
 #
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-# Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
 #
 #
 # This configure script is free software; the Free Software Foundation
@@ -89,6 +87,7 @@ fi
 IFS=" ""       $as_nl"
 
 # Find who we are.  Look in the path if we contain no directory separator.
+as_myself=
 case $0 in #((
   *[\\/]* ) as_myself=$0 ;;
   *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -133,6 +132,31 @@ export LANGUAGE
 # CDPATH.
 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
+# Use a proper internal environment variable to ensure we don't fall
+  # into an infinite loop, continuously re-executing ourselves.
+  if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
+    _as_can_reexec=no; export _as_can_reexec;
+    # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+  *v*x* | *x*v* ) as_opts=-vx ;;
+  *v* ) as_opts=-v ;;
+  *x* ) as_opts=-x ;;
+  * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+as_fn_exit 255
+  fi
+  # We don't want this to propagate to other subprocesses.
+          { _as_can_reexec=; unset _as_can_reexec;}
 if test "x$CONFIG_SHELL" = x; then
   as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
   emulate sh
@@ -166,7 +190,8 @@ if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
 else
   exitcode=1; echo positional parameters were not saved.
 fi
-test x\$exitcode = x0 || exit 1"
+test x\$exitcode = x0 || exit 1
+test -x / || exit 1"
   as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
   as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
   eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
@@ -210,14 +235,25 @@ IFS=$as_save_IFS
 
 
       if test "x$CONFIG_SHELL" != x; then :
-  # We cannot yet assume a decent shell, so we have to provide a
-       # neutralization value for shells without unset; and this also
-       # works around shells that cannot unset nonexistent variables.
-       BASH_ENV=/dev/null
-       ENV=/dev/null
-       (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-       export CONFIG_SHELL
-       exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
+  export CONFIG_SHELL
+             # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+  *v*x* | *x*v* ) as_opts=-vx ;;
+  *v* ) as_opts=-v ;;
+  *x* ) as_opts=-x ;;
+  * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
 fi
 
     if test x$as_have_required = xno; then :
@@ -319,6 +355,14 @@ $as_echo X"$as_dir" |
 
 
 } # as_fn_mkdir_p
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+  test -f "$1" && test -x "$1"
+} # as_fn_executable_p
 # as_fn_append VAR VALUE
 # ----------------------
 # Append the text in VALUE to the end of the definition contained in VAR. Take
@@ -440,6 +484,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
   chmod +x "$as_me.lineno" ||
     { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 
+  # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
+  # already done that, so ensure we don't try to do so again and fall
+  # in an infinite loop.  This has already happened in practice.
+  _as_can_reexec=no; export _as_can_reexec
   # Don't try to exec as it changes $[0], causing all sort of problems
   # (the dirname of $[0] is not the place where we might find the
   # original and so on.  Autoconf is especially sensitive to this).
@@ -474,16 +522,16 @@ if (echo >conf$$.file) 2>/dev/null; then
     # ... but there are two gotchas:
     # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
     # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
+    # In both cases, we have to default to `cp -pR'.
     ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
+      as_ln_s='cp -pR'
   elif ln conf$$.file conf$$ 2>/dev/null; then
     as_ln_s=ln
   else
-    as_ln_s='cp -p'
+    as_ln_s='cp -pR'
   fi
 else
-  as_ln_s='cp -p'
+  as_ln_s='cp -pR'
 fi
 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 rmdir conf$$.dir 2>/dev/null
@@ -495,28 +543,8 @@ else
   as_mkdir_p=false
 fi
 
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-       test -d "$1/.";
-      else
-       case $1 in #(
-       -*)set "./$1";;
-       esac;
-       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-       ???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
 
 # Sed expression to map a string onto a valid CPP name.
 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -548,8 +576,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='itstool'
 PACKAGE_TARNAME='itstool'
-PACKAGE_VERSION='2.0.2'
-PACKAGE_STRING='itstool 2.0.2'
+PACKAGE_VERSION='2.0.3'
+PACKAGE_STRING='itstool 2.0.3'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -565,6 +593,10 @@ PYTHON_PREFIX
 PYTHON_VERSION
 PYTHON
 DATADIR
+AM_BACKSLASH
+AM_DEFAULT_VERBOSITY
+AM_DEFAULT_V
+AM_V
 am__untar
 am__tar
 AMTAR
@@ -629,10 +661,12 @@ SHELL'
 ac_subst_files=''
 ac_user_opts='
 enable_option_checking
+enable_silent_rules
 '
       ac_precious_vars='build_alias
 host_alias
-target_alias'
+target_alias
+PYTHON'
 
 
 # Initialize some variables set by options.
@@ -695,8 +729,9 @@ do
   fi
 
   case $ac_option in
-  *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
-  *)   ac_optarg=yes ;;
+  *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
+  *=)   ac_optarg= ;;
+  *)    ac_optarg=yes ;;
   esac
 
   # Accept the important Cygnus configure options, so we can diagnose typos.
@@ -1036,7 +1071,7 @@ Try \`$0 --help' for more information"
     $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
     expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
       $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
-    : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+    : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
     ;;
 
   esac
@@ -1087,8 +1122,6 @@ target=$target_alias
 if test "x$host_alias" != x; then
   if test "x$build_alias" = x; then
     cross_compiling=maybe
-    $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used" >&2
   elif test "x$build_alias" != "x$host_alias"; then
     cross_compiling=yes
   fi
@@ -1174,7 +1207,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures itstool 2.0.2 to adapt to many kinds of systems.
+\`configure' configures itstool 2.0.3 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1240,10 +1273,23 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of itstool 2.0.2:";;
+     short | recursive ) echo "Configuration of itstool 2.0.3:";;
    esac
   cat <<\_ACEOF
 
+Optional Features:
+  --disable-option-checking  ignore unrecognized --enable/--with options
+  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
+  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
+  --enable-silent-rules   less verbose build output (undo: "make V=1")
+  --disable-silent-rules  verbose build output (undo: "make V=0")
+
+Some influential environment variables:
+  PYTHON      the Python interpreter
+
+Use these variables to override the choices made by `configure' or to help
+it to find libraries and programs with nonstandard names/locations.
+
 Report bugs to the package provider.
 _ACEOF
 ac_status=$?
@@ -1307,10 +1353,10 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-itstool configure 2.0.2
-generated by GNU Autoconf 2.66
+itstool configure 2.0.3
+generated by GNU Autoconf 2.69
 
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
 This configure script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it.
 _ACEOF
@@ -1324,8 +1370,8 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by itstool $as_me 2.0.2, which was
-generated by GNU Autoconf 2.66.  Invocation command line was
+It was created by itstool $as_me 2.0.3, which was
+generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
 
@@ -1672,7 +1718,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
-am__api_version='1.11'
+am__api_version='1.15'
 
 ac_aux_dir=
 for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
@@ -1720,7 +1766,7 @@ ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
 $as_echo_n "checking for a BSD-compatible install... " >&6; }
 if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then :
+if ${ac_cv_path_install+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -1740,7 +1786,7 @@ case $as_dir/ in #((
     # by default.
     for ac_prog in ginstall scoinst install; do
       for ac_exec_ext in '' $ac_executable_extensions; do
-       if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+       if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
          if test $ac_prog = install &&
            grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
            # AIX install.  It has an incompatible calling convention.
@@ -1798,9 +1844,6 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
 $as_echo_n "checking whether build environment is sane... " >&6; }
-# Just in case
-sleep 1
-echo timestamp > conftest.file
 # Reject unsafe characters in $srcdir or the absolute working directory
 # name.  Accept space and tab only in the latter.
 am_lf='
@@ -1811,32 +1854,40 @@ case `pwd` in
 esac
 case $srcdir in
   *[\\\"\#\$\&\'\`$am_lf\ \    ]*)
-    as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;;
+    as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;;
 esac
 
-# Do `set' in a subshell so we don't clobber the current shell's
+# Do 'set' in a subshell so we don't clobber the current shell's
 # arguments.  Must try -L first in case configure is actually a
 # symlink; some systems play weird games with the mod time of symlinks
 # (eg FreeBSD returns the mod time of the symlink's containing
 # directory).
 if (
-   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
-   if test "$*" = "X"; then
-      # -L didn't work.
-      set X `ls -t "$srcdir/configure" conftest.file`
-   fi
-   rm -f conftest.file
-   if test "$*" != "X $srcdir/configure conftest.file" \
-      && test "$*" != "X conftest.file $srcdir/configure"; then
-
-      # If neither matched, then we have a broken ls.  This can happen
-      # if, for instance, CONFIG_SHELL is bash and it inherits a
-      # broken ls alias from the environment.  This has actually
-      # happened.  Such a system could not be considered "sane".
-      as_fn_error $? "ls -t appears to fail.  Make sure there is not a broken
-alias in your environment" "$LINENO" 5
-   fi
-
+   am_has_slept=no
+   for am_try in 1 2; do
+     echo "timestamp, slept: $am_has_slept" > conftest.file
+     set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
+     if test "$*" = "X"; then
+       # -L didn't work.
+       set X `ls -t "$srcdir/configure" conftest.file`
+     fi
+     if test "$*" != "X $srcdir/configure conftest.file" \
+       && test "$*" != "X conftest.file $srcdir/configure"; then
+
+       # If neither matched, then we have a broken ls.  This can happen
+       # if, for instance, CONFIG_SHELL is bash and it inherits a
+       # broken ls alias from the environment.  This has actually
+       # happened.  Such a system could not be considered "sane".
+       as_fn_error $? "ls -t appears to fail.  Make sure there is not a broken
+  alias in your environment" "$LINENO" 5
+     fi
+     if test "$2" = conftest.file || test $am_try -eq 2; then
+       break
+     fi
+     # Just in case.
+     sleep 1
+     am_has_slept=yes
+   done
    test "$2" = conftest.file
    )
 then
@@ -1848,6 +1899,16 @@ Check your system clock" "$LINENO" 5
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
+# If we didn't sleep, we still need to ensure time stamps of config.status and
+# generated files are strictly newer.
+am_sleep_pid=
+if grep 'slept: no' conftest.file >/dev/null 2>&1; then
+  ( sleep 1 ) &
+  am_sleep_pid=$!
+fi
+
+rm -f conftest.file
+
 test "$program_prefix" != NONE &&
   program_transform_name="s&^&$program_prefix&;$program_transform_name"
 # Use a double $ so make ignores it.
@@ -1858,8 +1919,8 @@ test "$program_suffix" != NONE &&
 ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
 program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
 
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
+# Expand $ac_aux_dir to an absolute path.
+am_aux_dir=`cd "$ac_aux_dir" && pwd`
 
 if test x"${MISSING+set}" != xset; then
   case $am_aux_dir in
@@ -1870,15 +1931,15 @@ if test x"${MISSING+set}" != xset; then
   esac
 fi
 # Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
-  am_missing_run="$MISSING --run "
+if eval "$MISSING --is-lightweight"; then
+  am_missing_run="$MISSING "
 else
   am_missing_run=
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
+$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
 fi
 
-if test x"${install_sh}" != xset; then
+if test x"${install_sh+set}" != xset; then
   case $am_aux_dir in
   *\ * | *\    *)
     install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
@@ -1887,17 +1948,17 @@ if test x"${install_sh}" != xset; then
   esac
 fi
 
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'.  However `strip' might not be the right
+# Installed binaries are usually stripped using 'strip' when the user
+# run "make install-strip".  However 'strip' might not be the right
 # tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
+# will honor the 'STRIP' environment variable to overrule this program.
 if test "$cross_compiling" != no; then
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
 set dummy ${ac_tool_prefix}strip; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_STRIP+set}" = set; then :
+if ${ac_cv_prog_STRIP+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$STRIP"; then
@@ -1909,7 +1970,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_STRIP="${ac_tool_prefix}strip"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -1937,7 +1998,7 @@ if test -z "$ac_cv_prog_STRIP"; then
 set dummy strip; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then :
+if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$ac_ct_STRIP"; then
@@ -1949,7 +2010,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_STRIP="strip"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -1990,7 +2051,7 @@ INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
 if test -z "$MKDIR_P"; then
-  if test "${ac_cv_path_mkdir+set}" = set; then :
+  if ${ac_cv_path_mkdir+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -2000,7 +2061,7 @@ do
   test -z "$as_dir" && as_dir=.
     for ac_prog in mkdir gmkdir; do
         for ac_exec_ext in '' $ac_executable_extensions; do
-          { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
+          as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
           case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
             'mkdir (GNU coreutils) '* | \
             'mkdir (coreutils) '* | \
@@ -2029,19 +2090,13 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
 $as_echo "$MKDIR_P" >&6; }
 
-mkdir_p="$MKDIR_P"
-case $mkdir_p in
-  [\\/$]* | ?:[\\/]*) ;;
-  */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-
 for ac_prog in gawk mawk nawk awk
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AWK+set}" = set; then :
+if ${ac_cv_prog_AWK+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   if test -n "$AWK"; then
@@ -2053,7 +2108,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_AWK="$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2081,7 +2136,7 @@ done
 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
 set x ${MAKE-make}
 ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\"" = set; then :
+if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   cat >conftest.make <<\_ACEOF
@@ -2117,6 +2172,45 @@ else
 fi
 rmdir .tst 2>/dev/null
 
+# Check whether --enable-silent-rules was given.
+if test "${enable_silent_rules+set}" = set; then :
+  enableval=$enable_silent_rules;
+fi
+
+case $enable_silent_rules in # (((
+  yes) AM_DEFAULT_VERBOSITY=0;;
+   no) AM_DEFAULT_VERBOSITY=1;;
+    *) AM_DEFAULT_VERBOSITY=1;;
+esac
+am_make=${MAKE-make}
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
+$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
+if ${am_cv_make_support_nested_variables+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if $as_echo 'TRUE=$(BAR$(V))
+BAR0=false
+BAR1=true
+V=1
+am__doit:
+       @$(TRUE)
+.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then
+  am_cv_make_support_nested_variables=yes
+else
+  am_cv_make_support_nested_variables=no
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
+$as_echo "$am_cv_make_support_nested_variables" >&6; }
+if test $am_cv_make_support_nested_variables = yes; then
+    AM_V='$(V)'
+  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
+else
+  AM_V=$AM_DEFAULT_VERBOSITY
+  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
+fi
+AM_BACKSLASH='\'
+
 if test "`cd $srcdir && pwd`" != "`pwd`"; then
   # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
   # is not polluted with repeated "-I."
@@ -2139,7 +2233,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='itstool'
- VERSION='2.0.2'
+ VERSION='2.0.3'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2167,17 +2261,70 @@ AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
 
 MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 
-# We need awk for the "check" target.  The system "awk" is bad on
-# some platforms.
-# Always define AMTAR for backward compatibility.
+# For better backward compatibility.  To be removed once Automake 1.9.x
+# dies out for good.  For more background, see:
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
+mkdir_p='$(MKDIR_P)'
+
+# We need awk for the "check" target (and possibly the TAP driver).  The
+# system "awk" is bad on some platforms.
+# Always define AMTAR for backward compatibility.  Yes, it's still used
+# in the wild :-(  We should find a proper way to deprecate it ...
+AMTAR='$${TAR-tar}'
+
+
+# We'll loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar  pax cpio none'
+
+am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
 
-AMTAR=${AMTAR-"${am_missing_run}tar"}
 
-am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
 
 
 
 
+# POSIX will say in a future version that running "rm -f" with no argument
+# is OK; and we want to be able to make that assumption in our Makefile
+# recipes.  So use an aggressive probe to check that the usage we want is
+# actually supported "in the wild" to an acceptable degree.
+# See automake bug#10828.
+# To make any issue more visible, cause the running configure to be aborted
+# by default if the 'rm' program in use doesn't match our expectations; the
+# user can still override this though.
+if rm -f && rm -fr && rm -rf; then : OK; else
+  cat >&2 <<'END'
+Oops!
+
+Your 'rm' program seems unable to run without file operands specified
+on the command line, even when the '-f' option is present.  This is contrary
+to the behaviour of most rm programs out there, and not conforming with
+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
+
+Please tell bug-automake@gnu.org about your system, including the value
+of your $PATH and any error possibly output before this message.  This
+can help us improve future automake versions.
+
+END
+  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
+    echo 'Configuration will proceed anyway, since you have set the' >&2
+    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
+    echo >&2
+  else
+    cat >&2 <<'END'
+Aborting the configuration process, to ensure you take notice of the issue.
+
+You can download and install GNU coreutils to get an 'rm' implementation
+that behaves properly: <http://www.gnu.org/software/coreutils/>.
+
+If you want to complete the configuration process using your problematic
+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
+to "yes", and re-run configure.
+
+END
+    as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
+  fi
+fi
 
 
 DATADIR=`(
@@ -2193,10 +2340,12 @@ DATADIR=`(
 
 
 
+
+
         if test -n "$PYTHON"; then
       # If the user set $PYTHON, use it and don't search something else.
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version >= 2.6" >&5
-$as_echo_n "checking whether $PYTHON version >= 2.6... " >&6; }
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version is >= 2.6" >&5
+$as_echo_n "checking whether $PYTHON version is >= 2.6... " >&6; }
       prog="import sys
 # split strings by '.' and convert to numeric.  Append some zeros
 # because we need at least 4 digits for the hex conversion.
@@ -2214,7 +2363,9 @@ sys.exit(sys.hexversion < minverhex)"
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
 else
-  as_fn_error $? "too old" "$LINENO" 5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+                              as_fn_error $? "Python interpreter is too old" "$LINENO" 5
 fi
       am_display_PYTHON=$PYTHON
     else
@@ -2222,11 +2373,11 @@ fi
       # VERSION.
       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 2.6" >&5
 $as_echo_n "checking for a Python interpreter with version >= 2.6... " >&6; }
-if test "${am_cv_pathless_PYTHON+set}" = set; then :
+if ${am_cv_pathless_PYTHON+:} false; then :
   $as_echo_n "(cached) " >&6
 else
 
-       for am_cv_pathless_PYTHON in python python2 python3 python3.0 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 none; do
+       for am_cv_pathless_PYTHON in python python2 python3 python3.3 python3.2 python3.1 python3.0 python2.7  python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 none; do
          test "$am_cv_pathless_PYTHON" = none && break
          prog="import sys
 # split strings by '.' and convert to numeric.  Append some zeros
@@ -2256,7 +2407,7 @@ $as_echo "$am_cv_pathless_PYTHON" >&6; }
 set dummy $am_cv_pathless_PYTHON; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_PYTHON+set}" = set; then :
+if ${ac_cv_path_PYTHON+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   case $PYTHON in
@@ -2270,7 +2421,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2304,7 +2455,7 @@ fi
 
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5
 $as_echo_n "checking for $am_display_PYTHON version... " >&6; }
-if test "${am_cv_python_version+set}" = set; then :
+if ${am_cv_python_version+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"`
@@ -2323,7 +2474,7 @@ $as_echo "$am_cv_python_version" >&6; }
 
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5
 $as_echo_n "checking for $am_display_PYTHON platform... " >&6; }
-if test "${am_cv_python_platform+set}" = set; then :
+if ${am_cv_python_platform+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`
@@ -2333,11 +2484,30 @@ $as_echo "$am_cv_python_platform" >&6; }
   PYTHON_PLATFORM=$am_cv_python_platform
 
 
-
-
-                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5
+  # Just factor out some code duplication.
+  am_python_setup_sysconfig="\
+import sys
+# Prefer sysconfig over distutils.sysconfig, for better compatibility
+# with python 3.x.  See automake bug#10227.
+try:
+    import sysconfig
+except ImportError:
+    can_use_sysconfig = 0
+else:
+    can_use_sysconfig = 1
+# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs:
+# <https://github.com/pypa/virtualenv/issues/118>
+try:
+    from platform import python_implementation
+    if python_implementation() == 'CPython' and sys.version[:3] == '2.7':
+        can_use_sysconfig = 0
+except ImportError:
+    pass"
+
+
+            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5
 $as_echo_n "checking for $am_display_PYTHON script directory... " >&6; }
-if test "${am_cv_python_pythondir+set}" = set; then :
+if ${am_cv_python_pythondir+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   if test "x$prefix" = xNONE
@@ -2346,8 +2516,14 @@ else
      else
        am_py_prefix=$prefix
      fi
-     am_cv_python_pythondir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(0,0,prefix='$am_py_prefix'))" 2>/dev/null ||
-     echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
+     am_cv_python_pythondir=`$PYTHON -c "
+$am_python_setup_sysconfig
+if can_use_sysconfig:
+    sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
+else:
+    from distutils import sysconfig
+    sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
+sys.stdout.write(sitedir)"`
      case $am_cv_python_pythondir in
      $am_py_prefix*)
        am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
@@ -2373,9 +2549,9 @@ $as_echo "$am_cv_python_pythondir" >&6; }
   pkgpythondir=\${pythondir}/$PACKAGE
 
 
-            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5
 $as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; }
-if test "${am_cv_python_pyexecdir+set}" = set; then :
+if ${am_cv_python_pyexecdir+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   if test "x$exec_prefix" = xNONE
@@ -2384,8 +2560,14 @@ else
      else
        am_py_exec_prefix=$exec_prefix
      fi
-     am_cv_python_pyexecdir=`$PYTHON -c "import sys; from distutils import sysconfig; sys.stdout.write(sysconfig.get_python_lib(1,0,prefix='$am_py_exec_prefix'))" 2>/dev/null ||
-     echo "$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
+     am_cv_python_pyexecdir=`$PYTHON -c "
+$am_python_setup_sysconfig
+if can_use_sysconfig:
+    sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'})
+else:
+    from distutils import sysconfig
+    sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix')
+sys.stdout.write(sitedir)"`
      case $am_cv_python_pyexecdir in
      $am_py_exec_prefix*)
        am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
@@ -2429,7 +2611,7 @@ else
 $as_echo "found" >&6; }
 fi
 
-ac_config_files="$ac_config_files Makefile itstool itstool.1 its/Makefile"
+ac_config_files="$ac_config_files Makefile itstool itstool.1 its/Makefile setup.py"
 
 
 cat >confcache <<\_ACEOF
@@ -2496,10 +2678,21 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
      :end' >>confcache
 if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
   if test -w "$cache_file"; then
-    test "x$cache_file" != "x/dev/null" &&
+    if test "x$cache_file" != "x/dev/null"; then
       { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
 $as_echo "$as_me: updating cache $cache_file" >&6;}
-    cat confcache >$cache_file
+      if test ! -f "$cache_file" || test -h "$cache_file"; then
+       cat confcache >"$cache_file"
+      else
+        case $cache_file in #(
+        */* | ?:*)
+         mv -f confcache "$cache_file"$$ &&
+         mv -f "$cache_file"$$ "$cache_file" ;; #(
+        *)
+         mv -f confcache "$cache_file" ;;
+       esac
+      fi
+    fi
   else
     { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
@@ -2566,9 +2759,17 @@ LIBOBJS=$ac_libobjs
 LTLIBOBJS=$ac_ltlibobjs
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
+$as_echo_n "checking that generated files are newer than configure... " >&6; }
+   if test -n "$am_sleep_pid"; then
+     # Hide warnings about reused PIDs.
+     wait $am_sleep_pid 2>/dev/null
+   fi
+   { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
+$as_echo "done" >&6; }
 
 
-: ${CONFIG_STATUS=./config.status}
+: "${CONFIG_STATUS=./config.status}"
 ac_write_fail=0
 ac_clean_files_save=$ac_clean_files
 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
@@ -2669,6 +2870,7 @@ fi
 IFS=" ""       $as_nl"
 
 # Find who we are.  Look in the path if we contain no directory separator.
+as_myself=
 case $0 in #((
   *[\\/]* ) as_myself=$0 ;;
   *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -2864,16 +3066,16 @@ if (echo >conf$$.file) 2>/dev/null; then
     # ... but there are two gotchas:
     # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
     # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
+    # In both cases, we have to default to `cp -pR'.
     ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
+      as_ln_s='cp -pR'
   elif ln conf$$.file conf$$ 2>/dev/null; then
     as_ln_s=ln
   else
-    as_ln_s='cp -p'
+    as_ln_s='cp -pR'
   fi
 else
-  as_ln_s='cp -p'
+  as_ln_s='cp -pR'
 fi
 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 rmdir conf$$.dir 2>/dev/null
@@ -2933,28 +3135,16 @@ else
   as_mkdir_p=false
 fi
 
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-       test -d "$1/.";
-      else
-       case $1 in #(
-       -*)set "./$1";;
-       esac;
-       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-       ???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+  test -f "$1" && test -x "$1"
+} # as_fn_executable_p
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
 
 # Sed expression to map a string onto a valid CPP name.
 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -2975,8 +3165,8 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by itstool $as_me 2.0.2, which was
-generated by GNU Autoconf 2.66.  Invocation command line was
+This file was extended by itstool $as_me 2.0.3, which was
+generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
   CONFIG_HEADERS  = $CONFIG_HEADERS
@@ -3028,11 +3218,11 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-itstool config.status 2.0.2
-configured by $0, generated by GNU Autoconf 2.66,
+itstool config.status 2.0.3
+configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
 This config.status script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it."
 
@@ -3050,11 +3240,16 @@ ac_need_defaults=:
 while test $# != 0
 do
   case $1 in
-  --*=*)
+  --*=?*)
     ac_option=`expr "X$1" : 'X\([^=]*\)='`
     ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
     ac_shift=:
     ;;
+  --*=)
+    ac_option=`expr "X$1" : 'X\([^=]*\)='`
+    ac_optarg=
+    ac_shift=:
+    ;;
   *)
     ac_option=$1
     ac_optarg=$2
@@ -3076,6 +3271,7 @@ do
     $ac_shift
     case $ac_optarg in
     *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    '') as_fn_error $? "missing file argument" ;;
     esac
     as_fn_append CONFIG_FILES " '$ac_optarg'"
     ac_need_defaults=false;;
@@ -3106,7 +3302,7 @@ fi
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 if \$ac_cs_recheck; then
-  set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+  set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
   shift
   \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
   CONFIG_SHELL='$SHELL'
@@ -3139,6 +3335,7 @@ do
     "itstool") CONFIG_FILES="$CONFIG_FILES itstool" ;;
     "itstool.1") CONFIG_FILES="$CONFIG_FILES itstool.1" ;;
     "its/Makefile") CONFIG_FILES="$CONFIG_FILES its/Makefile" ;;
+    "setup.py") CONFIG_FILES="$CONFIG_FILES setup.py" ;;
 
   *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
   esac
@@ -3161,9 +3358,10 @@ fi
 # after its creation but before its name has been assigned to `$tmp'.
 $debug ||
 {
-  tmp=
+  tmp= ac_tmp=
   trap 'exit_status=$?
-  { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
+  : "${ac_tmp:=$tmp}"
+  { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
 ' 0
   trap 'as_fn_exit 1' 1 2 13 15
 }
@@ -3171,12 +3369,13 @@ $debug ||
 
 {
   tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
-  test -n "$tmp" && test -d "$tmp"
+  test -d "$tmp"
 }  ||
 {
   tmp=./conf$$-$RANDOM
   (umask 077 && mkdir "$tmp")
 } || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
+ac_tmp=$tmp
 
 # Set up the scripts for CONFIG_FILES section.
 # No need to generate them if there are no CONFIG_FILES.
@@ -3198,7 +3397,7 @@ else
   ac_cs_awk_cr=$ac_cr
 fi
 
-echo 'BEGIN {' >"$tmp/subs1.awk" &&
+echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
 _ACEOF
 
 
@@ -3226,7 +3425,7 @@ done
 rm -f conf$$subs.sh
 
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
+cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
 _ACEOF
 sed -n '
 h
@@ -3274,7 +3473,7 @@ t delim
 rm -f conf$$subs.awk
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 _ACAWK
-cat >>"\$tmp/subs1.awk" <<_ACAWK &&
+cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
   for (key in S) S_is_set[key] = 1
   FS = "\a"
 
@@ -3306,7 +3505,7 @@ if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
   sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
 else
   cat
-fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
+fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
   || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
 _ACEOF
 
@@ -3365,7 +3564,7 @@ do
     for ac_f
     do
       case $ac_f in
-      -) ac_f="$tmp/stdin";;
+      -) ac_f="$ac_tmp/stdin";;
       *) # Look for the file first in the build tree, then in the source tree
         # (if the path is not absolute).  The absolute path cannot be DOS-style,
         # because $ac_f cannot contain `:'.
@@ -3400,7 +3599,7 @@ $as_echo "$as_me: creating $ac_file" >&6;}
     esac
 
     case $ac_tag in
-    *:-:* | *:-) cat >"$tmp/stdin" \
+    *:-:* | *:-) cat >"$ac_tmp/stdin" \
       || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
     esac
     ;;
@@ -3537,21 +3736,22 @@ s&@INSTALL@&$ac_INSTALL&;t t
 s&@MKDIR_P@&$ac_MKDIR_P&;t t
 $ac_datarootdir_hack
 "
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
-  || as_fn_error $? "could not create $ac_file" "$LINENO" 5
+eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
+  >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
 
 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
-  { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
-  { ac_out=`sed -n '/^[         ]*datarootdir[  ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
+  { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
+  { ac_out=`sed -n '/^[         ]*datarootdir[  ]*:*=/p' \
+      "$ac_tmp/out"`; test -z "$ac_out"; } &&
   { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 which seems to be undefined.  Please make sure it is defined" >&5
 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 which seems to be undefined.  Please make sure it is defined" >&2;}
 
-  rm -f "$tmp/stdin"
+  rm -f "$ac_tmp/stdin"
   case $ac_file in
-  -) cat "$tmp/out" && rm -f "$tmp/out";;
-  *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
+  -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
+  *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
   esac \
   || as_fn_error $? "could not create $ac_file" "$LINENO" 5
  ;;
index c29efad64fab905e21c3b2b9f669ec24dd809e9b..2116c567dd9d20d6d58ba45f8d5474284c699a8c 100644 (file)
@@ -1,4 +1,4 @@
-AC_INIT([itstool], [2.0.2], [])
+AC_INIT([itstool], [2.0.3], [])
 AM_INIT_AUTOMAKE([1.9 no-dist-gzip dist-bzip2])
 
 DATADIR=`(
@@ -27,6 +27,7 @@ Makefile
 itstool
 itstool.1
 its/Makefile
+setup.py
 ])
 
 AC_OUTPUT
index 6781b987bdbcbc23efe6bbe1654a1e3637b9af07..0b0fdcbba69ab6dd05ca162a5328828d46ab1d54 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # install - install a program, script, or datafile
 
-scriptversion=2009-04-28.21; # UTC
+scriptversion=2013-12-25.23; # UTC
 
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
 # later released in X11R6 (xc/config/util/install.sh) with the
@@ -35,25 +35,21 @@ scriptversion=2009-04-28.21; # UTC
 # FSF changes to this file are in the public domain.
 #
 # Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
+# 'make' implicit rules from creating a file called install from it
 # when there is no Makefile.
 #
 # This script is compatible with the BSD install script, but was written
 # from scratch.
 
+tab='  '
 nl='
 '
-IFS=" ""       $nl"
+IFS=" $tab$nl"
 
-# set DOITPROG to echo to test this script
+# Set DOITPROG to "echo" to test this script.
 
-# Don't use :- since 4.3BSD and earlier shells don't like it.
 doit=${DOITPROG-}
-if test -z "$doit"; then
-  doit_exec=exec
-else
-  doit_exec=$doit
-fi
+doit_exec=${doit:-exec}
 
 # Put in absolute file names if you don't have them in your path;
 # or use environment vars.
@@ -68,17 +64,6 @@ mvprog=${MVPROG-mv}
 rmprog=${RMPROG-rm}
 stripprog=${STRIPPROG-strip}
 
-posix_glob='?'
-initialize_posix_glob='
-  test "$posix_glob" != "?" || {
-    if (set -f) 2>/dev/null; then
-      posix_glob=
-    else
-      posix_glob=:
-    fi
-  }
-'
-
 posix_mkdir=
 
 # Desired mode of installed file.
@@ -97,7 +82,7 @@ dir_arg=
 dst_arg=
 
 copy_on_change=false
-no_target_directory=
+is_target_a_directory=possibly
 
 usage="\
 Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
@@ -137,42 +122,57 @@ while test $# -ne 0; do
     -d) dir_arg=true;;
 
     -g) chgrpcmd="$chgrpprog $2"
-       shift;;
+        shift;;
 
     --help) echo "$usage"; exit $?;;
 
     -m) mode=$2
-       case $mode in
-         *' '* | *'    '* | *'
-'*       | *'*'* | *'?'* | *'['*)
-           echo "$0: invalid mode: $mode" >&2
-           exit 1;;
-       esac
-       shift;;
+        case $mode in
+          *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
+            echo "$0: invalid mode: $mode" >&2
+            exit 1;;
+        esac
+        shift;;
 
     -o) chowncmd="$chownprog $2"
-       shift;;
+        shift;;
 
     -s) stripcmd=$stripprog;;
 
-    -t) dst_arg=$2
-       shift;;
+    -t)
+        is_target_a_directory=always
+        dst_arg=$2
+        # Protect names problematic for 'test' and other utilities.
+        case $dst_arg in
+          -* | [=\(\)!]) dst_arg=./$dst_arg;;
+        esac
+        shift;;
 
-    -T) no_target_directory=true;;
+    -T) is_target_a_directory=never;;
 
     --version) echo "$0 $scriptversion"; exit $?;;
 
-    --)        shift
-       break;;
+    --) shift
+        break;;
 
-    -*)        echo "$0: invalid option: $1" >&2
-       exit 1;;
+    -*) echo "$0: invalid option: $1" >&2
+        exit 1;;
 
     *)  break;;
   esac
   shift
 done
 
+# We allow the use of options -d and -T together, by making -d
+# take the precedence; this is for compatibility with GNU install.
+
+if test -n "$dir_arg"; then
+  if test -n "$dst_arg"; then
+    echo "$0: target directory not allowed when installing a directory." >&2
+    exit 1
+  fi
+fi
+
 if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
   # When -d is used, all remaining arguments are directories to create.
   # When -t is used, the destination is already specified.
@@ -186,6 +186,10 @@ if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
     fi
     shift # arg
     dst_arg=$arg
+    # Protect names problematic for 'test' and other utilities.
+    case $dst_arg in
+      -* | [=\(\)!]) dst_arg=./$dst_arg;;
+    esac
   done
 fi
 
@@ -194,13 +198,26 @@ if test $# -eq 0; then
     echo "$0: no input file specified." >&2
     exit 1
   fi
-  # It's OK to call `install-sh -d' without argument.
+  # It's OK to call 'install-sh -d' without argument.
   # This can happen when creating conditional directories.
   exit 0
 fi
 
 if test -z "$dir_arg"; then
-  trap '(exit $?); exit' 1 2 13 15
+  if test $# -gt 1 || test "$is_target_a_directory" = always; then
+    if test ! -d "$dst_arg"; then
+      echo "$0: $dst_arg: Is not a directory." >&2
+      exit 1
+    fi
+  fi
+fi
+
+if test -z "$dir_arg"; then
+  do_exit='(exit $ret); exit $ret'
+  trap "ret=129; $do_exit" 1
+  trap "ret=130; $do_exit" 2
+  trap "ret=141; $do_exit" 13
+  trap "ret=143; $do_exit" 15
 
   # Set umask so as not to create temps with too-generous modes.
   # However, 'strip' requires both read and write access to temps.
@@ -211,16 +228,16 @@ if test -z "$dir_arg"; then
 
     *[0-7])
       if test -z "$stripcmd"; then
-       u_plus_rw=
+        u_plus_rw=
       else
-       u_plus_rw='% 200'
+        u_plus_rw='% 200'
       fi
       cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
     *)
       if test -z "$stripcmd"; then
-       u_plus_rw=
+        u_plus_rw=
       else
-       u_plus_rw=,u+rw
+        u_plus_rw=,u+rw
       fi
       cp_umask=$mode$u_plus_rw;;
   esac
@@ -228,9 +245,9 @@ fi
 
 for src
 do
-  # Protect names starting with `-'.
+  # Protect names problematic for 'test' and other utilities.
   case $src in
-    -*) src=./$src;;
+    -* | [=\(\)!]) src=./$src;;
   esac
 
   if test -n "$dir_arg"; then
@@ -252,51 +269,20 @@ do
       echo "$0: no destination specified." >&2
       exit 1
     fi
-
     dst=$dst_arg
-    # Protect names starting with `-'.
-    case $dst in
-      -*) dst=./$dst;;
-    esac
 
     # If destination is a directory, append the input filename; won't work
     # if double slashes aren't ignored.
     if test -d "$dst"; then
-      if test -n "$no_target_directory"; then
-       echo "$0: $dst_arg: Is a directory" >&2
-       exit 1
+      if test "$is_target_a_directory" = never; then
+        echo "$0: $dst_arg: Is a directory" >&2
+        exit 1
       fi
       dstdir=$dst
       dst=$dstdir/`basename "$src"`
       dstdir_status=0
     else
-      # Prefer dirname, but fall back on a substitute if dirname fails.
-      dstdir=`
-       (dirname "$dst") 2>/dev/null ||
-       expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-            X"$dst" : 'X\(//\)[^/]' \| \
-            X"$dst" : 'X\(//\)$' \| \
-            X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
-       echo X"$dst" |
-           sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-                  s//\1/
-                  q
-                }
-                /^X\(\/\/\)[^/].*/{
-                  s//\1/
-                  q
-                }
-                /^X\(\/\/\)$/{
-                  s//\1/
-                  q
-                }
-                /^X\(\/\).*/{
-                  s//\1/
-                  q
-                }
-                s/.*/./; q'
-      `
-
+      dstdir=`dirname "$dst"`
       test -d "$dstdir"
       dstdir_status=$?
     fi
@@ -307,74 +293,74 @@ do
   if test $dstdir_status != 0; then
     case $posix_mkdir in
       '')
-       # Create intermediate dirs using mode 755 as modified by the umask.
-       # This is like FreeBSD 'install' as of 1997-10-28.
-       umask=`umask`
-       case $stripcmd.$umask in
-         # Optimize common cases.
-         *[2367][2367]) mkdir_umask=$umask;;
-         .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-
-         *[0-7])
-           mkdir_umask=`expr $umask + 22 \
-             - $umask % 100 % 40 + $umask % 20 \
-             - $umask % 10 % 4 + $umask % 2
-           `;;
-         *) mkdir_umask=$umask,go-w;;
-       esac
-
-       # With -d, create the new directory with the user-specified mode.
-       # Otherwise, rely on $mkdir_umask.
-       if test -n "$dir_arg"; then
-         mkdir_mode=-m$mode
-       else
-         mkdir_mode=
-       fi
-
-       posix_mkdir=false
-       case $umask in
-         *[123567][0-7][0-7])
-           # POSIX mkdir -p sets u+wx bits regardless of umask, which
-           # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
-           ;;
-         *)
-           tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
-           trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
-
-           if (umask $mkdir_umask &&
-               exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
-           then
-             if test -z "$dir_arg" || {
-                  # Check for POSIX incompatibilities with -m.
-                  # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
-                  # other-writeable bit of parent directory when it shouldn't.
-                  # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
-                  ls_ld_tmpdir=`ls -ld "$tmpdir"`
-                  case $ls_ld_tmpdir in
-                    d????-?r-*) different_mode=700;;
-                    d????-?--*) different_mode=755;;
-                    *) false;;
-                  esac &&
-                  $mkdirprog -m$different_mode -p -- "$tmpdir" && {
-                    ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
-                    test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
-                  }
-                }
-             then posix_mkdir=:
-             fi
-             rmdir "$tmpdir/d" "$tmpdir"
-           else
-             # Remove any dirs left behind by ancient mkdir implementations.
-             rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
-           fi
-           trap '' 0;;
-       esac;;
+        # Create intermediate dirs using mode 755 as modified by the umask.
+        # This is like FreeBSD 'install' as of 1997-10-28.
+        umask=`umask`
+        case $stripcmd.$umask in
+          # Optimize common cases.
+          *[2367][2367]) mkdir_umask=$umask;;
+          .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
+
+          *[0-7])
+            mkdir_umask=`expr $umask + 22 \
+              - $umask % 100 % 40 + $umask % 20 \
+              - $umask % 10 % 4 + $umask % 2
+            `;;
+          *) mkdir_umask=$umask,go-w;;
+        esac
+
+        # With -d, create the new directory with the user-specified mode.
+        # Otherwise, rely on $mkdir_umask.
+        if test -n "$dir_arg"; then
+          mkdir_mode=-m$mode
+        else
+          mkdir_mode=
+        fi
+
+        posix_mkdir=false
+        case $umask in
+          *[123567][0-7][0-7])
+            # POSIX mkdir -p sets u+wx bits regardless of umask, which
+            # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
+            ;;
+          *)
+            tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+            trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
+
+            if (umask $mkdir_umask &&
+                exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
+            then
+              if test -z "$dir_arg" || {
+                   # Check for POSIX incompatibilities with -m.
+                   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+                   # other-writable bit of parent directory when it shouldn't.
+                   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+                   ls_ld_tmpdir=`ls -ld "$tmpdir"`
+                   case $ls_ld_tmpdir in
+                     d????-?r-*) different_mode=700;;
+                     d????-?--*) different_mode=755;;
+                     *) false;;
+                   esac &&
+                   $mkdirprog -m$different_mode -p -- "$tmpdir" && {
+                     ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
+                     test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+                   }
+                 }
+              then posix_mkdir=:
+              fi
+              rmdir "$tmpdir/d" "$tmpdir"
+            else
+              # Remove any dirs left behind by ancient mkdir implementations.
+              rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
+            fi
+            trap '' 0;;
+        esac;;
     esac
 
     if
       $posix_mkdir && (
-       umask $mkdir_umask &&
-       $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
+        umask $mkdir_umask &&
+        $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
       )
     then :
     else
@@ -384,53 +370,51 @@ do
       # directory the slow way, step by step, checking for races as we go.
 
       case $dstdir in
-       /*) prefix='/';;
-       -*) prefix='./';;
-       *)  prefix='';;
+        /*) prefix='/';;
+        [-=\(\)!]*) prefix='./';;
+        *)  prefix='';;
       esac
 
-      eval "$initialize_posix_glob"
-
       oIFS=$IFS
       IFS=/
-      $posix_glob set -f
+      set -f
       set fnord $dstdir
       shift
-      $posix_glob set +f
+      set +f
       IFS=$oIFS
 
       prefixes=
 
       for d
       do
-       test -z "$d" && continue
-
-       prefix=$prefix$d
-       if test -d "$prefix"; then
-         prefixes=
-       else
-         if $posix_mkdir; then
-           (umask=$mkdir_umask &&
-            $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
-           # Don't fail if two instances are running concurrently.
-           test -d "$prefix" || exit 1
-         else
-           case $prefix in
-             *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
-             *) qprefix=$prefix;;
-           esac
-           prefixes="$prefixes '$qprefix'"
-         fi
-       fi
-       prefix=$prefix/
+        test X"$d" = X && continue
+
+        prefix=$prefix$d
+        if test -d "$prefix"; then
+          prefixes=
+        else
+          if $posix_mkdir; then
+            (umask=$mkdir_umask &&
+             $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
+            # Don't fail if two instances are running concurrently.
+            test -d "$prefix" || exit 1
+          else
+            case $prefix in
+              *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
+              *) qprefix=$prefix;;
+            esac
+            prefixes="$prefixes '$qprefix'"
+          fi
+        fi
+        prefix=$prefix/
       done
 
       if test -n "$prefixes"; then
-       # Don't fail if two instances are running concurrently.
-       (umask $mkdir_umask &&
-        eval "\$doit_exec \$mkdirprog $prefixes") ||
-         test -d "$dstdir" || exit 1
-       obsolete_mkdir_used=true
+        # Don't fail if two instances are running concurrently.
+        (umask $mkdir_umask &&
+         eval "\$doit_exec \$mkdirprog $prefixes") ||
+          test -d "$dstdir" || exit 1
+        obsolete_mkdir_used=true
       fi
     fi
   fi
@@ -465,15 +449,12 @@ do
 
     # If -C, don't bother to copy if it wouldn't change the file.
     if $copy_on_change &&
-       old=`LC_ALL=C ls -dlL "$dst"    2>/dev/null` &&
-       new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
-
-       eval "$initialize_posix_glob" &&
-       $posix_glob set -f &&
+       old=`LC_ALL=C ls -dlL "$dst"     2>/dev/null` &&
+       new=`LC_ALL=C ls -dlL "$dsttmp"  2>/dev/null` &&
+       set -f &&
        set X $old && old=:$2:$4:$5:$6 &&
        set X $new && new=:$2:$4:$5:$6 &&
-       $posix_glob set +f &&
-
+       set +f &&
        test "$old" = "$new" &&
        $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
     then
@@ -486,24 +467,24 @@ do
       # to itself, or perhaps because mv is so ancient that it does not
       # support -f.
       {
-       # Now remove or move aside any old file at destination location.
-       # We try this two ways since rm can't unlink itself on some
-       # systems and the destination file might be busy for other
-       # reasons.  In this case, the final cleanup might fail but the new
-       # file should still install successfully.
-       {
-         test ! -f "$dst" ||
-         $doit $rmcmd -f "$dst" 2>/dev/null ||
-         { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
-           { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
-         } ||
-         { echo "$0: cannot unlink or rename $dst" >&2
-           (exit 1); exit 1
-         }
-       } &&
-
-       # Now rename the file to the real destination.
-       $doit $mvcmd "$dsttmp" "$dst"
+        # Now remove or move aside any old file at destination location.
+        # We try this two ways since rm can't unlink itself on some
+        # systems and the destination file might be busy for other
+        # reasons.  In this case, the final cleanup might fail but the new
+        # file should still install successfully.
+        {
+          test ! -f "$dst" ||
+          $doit $rmcmd -f "$dst" 2>/dev/null ||
+          { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
+            { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
+          } ||
+          { echo "$0: cannot unlink or rename $dst" >&2
+            (exit 1); exit 1
+          }
+        } &&
+
+        # Now rename the file to the real destination.
+        $doit $mvcmd "$dsttmp" "$dst"
       }
     fi || exit 1
 
index 6f0ea95828dbce2bae87d1c8b3016ff1f59899a0..0f9946c100b7ba666ffb59a6ab27683cf2caf277 100644 (file)
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.15 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
+# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 @SET_MAKE@
 
 VPATH = @srcdir@
+am__is_gnu_make = { \
+  if test -z '$(MAKELEVEL)'; then \
+    false; \
+  elif test -n '$(MAKE_HOST)'; then \
+    true; \
+  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+    true; \
+  else \
+    false; \
+  fi; \
+}
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \  ]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -33,16 +87,33 @@ NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
 subdir = its
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
 mkinstalldirs = $(install_sh) -d
 CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
 SOURCES =
 DIST_SOURCES =
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
@@ -64,11 +135,20 @@ am__nobase_list = $(am__nobase_strip_setup); \
 am__base_list = \
   sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
   sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+  test -z "$$files" \
+    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+         $(am__cd) "$$dir" && rm -f $$files; }; \
+  }
 am__installdirs = "$(DESTDIR)$(itsdir)"
 DATA = $(its_DATA)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+am__DIST_COMMON = $(srcdir)/Makefile.in
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 AUTOCONF = @AUTOCONF@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
@@ -167,7 +247,6 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu its/Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --gnu its/Makefile
-.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -187,8 +266,11 @@ $(ACLOCAL_M4):  $(am__aclocal_m4_deps)
 $(am__aclocal_m4_deps):
 install-itsDATA: $(its_DATA)
        @$(NORMAL_INSTALL)
-       test -z "$(itsdir)" || $(MKDIR_P) "$(DESTDIR)$(itsdir)"
        @list='$(its_DATA)'; test -n "$(itsdir)" || list=; \
+       if test -n "$$list"; then \
+         echo " $(MKDIR_P) '$(DESTDIR)$(itsdir)'"; \
+         $(MKDIR_P) "$(DESTDIR)$(itsdir)" || exit 1; \
+       fi; \
        for p in $$list; do \
          if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
          echo "$$d$$p"; \
@@ -202,14 +284,12 @@ uninstall-itsDATA:
        @$(NORMAL_UNINSTALL)
        @list='$(its_DATA)'; test -n "$(itsdir)" || list=; \
        files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
-       test -n "$$files" || exit 0; \
-       echo " ( cd '$(DESTDIR)$(itsdir)' && rm -f" $$files ")"; \
-       cd "$(DESTDIR)$(itsdir)" && rm -f $$files
-tags: TAGS
-TAGS:
+       dir='$(DESTDIR)$(itsdir)'; $(am__uninstall_files_from_dir)
+tags TAGS:
+
+ctags CTAGS:
 
-ctags: CTAGS
-CTAGS:
+cscope cscopelist:
 
 
 distdir: $(DISTFILES)
@@ -259,10 +339,15 @@ install-am: all-am
 
 installcheck: installcheck-am
 install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-         install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-         `test -z '$(STRIP)' || \
-           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+       if test -z '$(STRIP)'; then \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+             install; \
+       else \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+           "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+       fi
 mostlyclean-generic:
 
 clean-generic:
@@ -342,16 +427,19 @@ uninstall-am: uninstall-itsDATA
 
 .MAKE: install-am install-strip
 
-.PHONY: all all-am check check-am clean clean-generic distclean \
-       distclean-generic distdir dvi dvi-am html html-am info info-am \
-       install install-am install-data install-data-am install-dvi \
-       install-dvi-am install-exec install-exec-am install-html \
-       install-html-am install-info install-info-am install-itsDATA \
-       install-man install-pdf install-pdf-am install-ps \
-       install-ps-am install-strip installcheck installcheck-am \
-       installdirs maintainer-clean maintainer-clean-generic \
-       mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
-       uninstall-am uninstall-itsDATA
+.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
+       ctags-am distclean distclean-generic distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-dvi install-dvi-am install-exec \
+       install-exec-am install-html install-html-am install-info \
+       install-info-am install-itsDATA install-man install-pdf \
+       install-pdf-am install-ps install-ps-am install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am tags-am uninstall uninstall-am \
+       uninstall-itsDATA
+
+.PRECIOUS: Makefile
 
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
diff --git a/itstool b/itstool
index 7f6097b28ed475b9e6c757bf3971e738332072a9..ca37a1227b076cc1263a7ab8f46083947a6afb76 100644 (file)
--- a/itstool
+++ b/itstool
 # with ITS Tool; if not, write to the Free Software Foundation, 59 Temple
 # Place, Suite 330, Boston, MA  0211-1307  USA.
 #
+from __future__ import print_function
+from __future__ import unicode_literals
 
-VERSION="2.0.2"
+VERSION="2.0.3"
 DATADIR="/usr/local/share"
 
 import gettext
@@ -29,6 +31,22 @@ import os.path
 import re
 import sys
 import time
+import io
+
+PY3 = sys.version_info[0] == 3
+if PY3:
+    string_types = str,
+    def ustr(s, encoding=None):
+        if isinstance(s, str):
+            return s
+        elif encoding:
+            return str(s, encoding)
+        else:
+            return str(s)
+    ustr_type = str
+else:
+    string_types = basestring,
+    ustr = ustr_type = unicode
 
 NS_ITS = 'http://www.w3.org/2005/11/its'
 NS_ITST = 'http://itstool.org/extensions/'
@@ -81,14 +99,14 @@ class MessageList (object):
         return self._by_node.get(node, None)
 
     def get_nodes_with_messages (self):
-        return self._by_node.keys()
+        return list(self._by_node.keys())
 
     def output (self, out):
         msgs = []
         msgdict = {}
         for msg in self._messages:
             key = (msg.get_context(), msg.get_string())
-            if msgdict.has_key(key):
+            if key in msgdict:
                 for source in msg.get_sources():
                     msgdict[key].add_source(source)
                 for marker in msg.get_markers():
@@ -105,7 +123,7 @@ class MessageList (object):
                         msgdict[key].set_locale_filter('%s, %s' % (locale, msg.get_locale_filter()))
                     else:
                         msgdict[key].set_locale_filter(msg.get_locale_filter())
-                
+
             else:
                 msgs.append(msg)
                 msgdict[key] = msg
@@ -121,13 +139,13 @@ class MessageList (object):
         out.write('"Content-Transfer-Encoding: 8bit\\n"\n')
         out.write('\n')
         for msg in msgs:
-            out.write(msg.format().encode('utf-8'))
+            out.write(msg.format())
             out.write('\n')
 
 
 class Comment (object):
     def __init__ (self, text):
-        self._text = str(text)
+        self._text = ustr(text)
         assert(text is not None)
         self._markers = []
 
@@ -141,10 +159,10 @@ class Comment (object):
         return self._text
 
     def format (self):
-        ret = u''
+        ret = ''
         markers = {}
         for marker in self._markers:
-            if not markers.has_key(marker):
+            if marker not in markers:
                 ret += '#. (itstool) comment: ' + marker + '\n'
                 markers[marker] = marker
         if '\n' in self._text:
@@ -154,7 +172,7 @@ class Comment (object):
                     doadd = True
                 if not doadd:
                     continue
-                ret += u'#. %s\n' % line
+                ret += '#. %s\n' % line
         else:
             text = self._text
             while len(text) > 72:
@@ -163,12 +181,18 @@ class Comment (object):
                     j = text.find(' ')
                 if j == -1:
                     break
-                ret += u'#. %s\n' % text[:j]
+                ret += '#. %s\n' % text[:j]
                 text = text[j+1:]
             ret += '#. %s\n' % text
         return ret
 
 
+class Placeholder (object):
+    def __init__ (self, node):
+        self.node = node
+        self.name = ustr(node.name, 'utf-8')
+
+
 class Message (object):
     def __init__ (self):
         self._message = []
@@ -187,19 +211,14 @@ class Message (object):
             return "Empty message"
         return self.get_string()
 
-    class Placeholder (object):
-        def __init__ (self, node):
-            self.node = node
-            self.name = unicode(node.name, 'utf-8')
-
     def escape (self, text):
         return text.replace('\\','\\\\').replace('"', "\\\"").replace("\n","\\n").replace("\t","\\t")
 
     def add_text (self, text):
-        if len(self._message) == 0 or not(isinstance(self._message[-1], basestring)):
+        if len(self._message) == 0 or not(isinstance(self._message[-1], string_types)):
             self._message.append('')
-        if not isinstance(text, unicode):
-            text = unicode(text, 'utf-8')
+        if not isinstance(text, ustr_type):
+            text = ustr(text, 'utf-8')
         self._message[-1] += text.replace('&', '&amp;').replace('<', '&lt;').replace('>', '&gt;')
         if re.sub('\s+', ' ', text).strip() != '':
             self._empty = False
@@ -209,32 +228,32 @@ class Message (object):
         self._empty = False
 
     def add_placeholder (self, node):
-        holder = Message.Placeholder(node)
+        holder = Placeholder(node)
         self._placeholders.append(holder)
         self._message.append(holder)
 
     def get_placeholder (self, name):
         placeholder = 1
         for holder in self._placeholders:
-            holdername = u'%s-%i' % (holder.name, placeholder)
-            if holdername == unicode(name, 'utf-8'):
+            holdername = '%s-%i' % (holder.name, placeholder)
+            if holdername == ustr(name, 'utf-8'):
                 return holder
             placeholder += 1
 
     def add_start_tag (self, node):
-        if len(self._message) == 0 or not(isinstance(self._message[-1], basestring)):
+        if len(self._message) == 0 or not(isinstance(self._message[-1], string_types)):
             self._message.append('')
         if node.ns() is not None and node.ns().name is not None:
-            self._message[-1] += (u'<%s:%s' % (unicode(node.ns().name, 'utf-8'), unicode(node.name, 'utf-8')))
+            self._message[-1] += ('<%s:%s' % (ustr(node.ns().name, 'utf-8'), ustr(node.name, 'utf-8')))
         else:
-            self._message[-1] += (u'<%s' % unicode(node.name, 'utf-8'))
+            self._message[-1] += ('<%s' % ustr(node.name, 'utf-8'))
         for prop in xml_attr_iter(node):
             name = prop.name
             if prop.ns() is not None:
                 name = prop.ns().name + ':' + name
             atval = prop.content
-            if not isinstance(atval, unicode):
-                atval = unicode(atval, 'utf-8')
+            if not isinstance(atval, ustr_type):
+                atval = ustr(atval, 'utf-8')
             atval = atval.replace('&', '&amp;').replace('<', '&lt;').replace('>', '&gt;').replace('"', '&quot;')
             self._message += " %s=\"%s\"" % (name, atval)
         if node.children is not None:
@@ -244,12 +263,12 @@ class Message (object):
 
     def add_end_tag (self, node):
         if node.children is not None:
-            if len(self._message) == 0 or not(isinstance(self._message[-1], basestring)):
+            if len(self._message) == 0 or not(isinstance(self._message[-1], string_types)):
                 self._message.append('')
             if node.ns() is not None and node.ns().name is not None:
-                self._message[-1] += (u'</%s:%s>' % (unicode(node.ns().name, 'utf-8'), unicode(node.name, 'utf-8')))
+                self._message[-1] += ('</%s:%s>' % (ustr(node.ns().name, 'utf-8'), ustr(node.name, 'utf-8')))
             else:
-                self._message[-1] += (u'</%s>' % unicode(node.name, 'utf-8'))
+                self._message[-1] += ('</%s>' % ustr(node.name, 'utf-8'))
 
     def is_empty (self):
         return self._empty
@@ -261,16 +280,16 @@ class Message (object):
         self._ctxt = ctxt
 
     def add_source (self, source):
-        if not isinstance(source, unicode):
-            source = unicode(source, 'utf-8')
+        if not isinstance(source, ustr_type):
+            source = ustr(source, 'utf-8')
         self._sources.append(source)
 
     def get_sources (self):
         return self._sources
 
     def add_marker (self, marker):
-        if not isinstance(marker, unicode):
-            marker = unicode(marker, 'utf-8')
+        if not isinstance(marker, ustr_type):
+            marker = ustr(marker, 'utf-8')
         self._markers.append(marker)
 
     def get_markers (self):
@@ -290,13 +309,13 @@ class Message (object):
         return self._comments
 
     def get_string (self):
-        message = u''
+        message = ''
         placeholder = 1
         for msg in self._message:
-            if isinstance(msg, basestring):
+            if isinstance(msg, string_types):
                 message += msg
-            elif isinstance(msg, Message.Placeholder):
-                message += u'<_:%s-%i/>' % (msg.name, placeholder)
+            elif isinstance(msg, Placeholder):
+                message += '<_:%s-%i/>' % (msg.name, placeholder)
                 placeholder += 1
         if not self._preserve:
             message = re.sub('\s+', ' ', message).strip()
@@ -315,10 +334,10 @@ class Message (object):
         self._locale_filter = locale
 
     def format (self):
-        ret = u''
+        ret = ''
         markers = {}
         for marker in self._markers:
-            if not markers.has_key(marker):
+            if marker not in markers:
                 ret += '#. (itstool) path: ' + marker + '\n'
                 markers[marker] = marker
         for idvalue in self._id_values:
@@ -329,7 +348,7 @@ class Message (object):
         commentsdict = {}
         for comment in self._comments:
             key = comment.get_text()
-            if commentsdict.has_key(key):
+            if key in commentsdict:
                 for marker in comment.get_markers():
                     commentsdict[key].add_marker(marker)
             else:
@@ -340,23 +359,23 @@ class Message (object):
                 ret += '#.\n'
             ret += comments[i].format()
         for source in self._sources:
-            ret += u'#: %s\n' % source
+            ret += '#: %s\n' % source
         if self._preserve:
-            ret += u'#, no-wrap\n'
+            ret += '#, no-wrap\n'
         if self._ctxt is not None:
-            ret += u'msgctxt "%s"\n' % self._ctxt
+            ret += 'msgctxt "%s"\n' % self._ctxt
         message = self.get_string()
         if self._preserve:
-            ret += u'msgid ""\n'
+            ret += 'msgid ""\n'
             lines = message.split('\n')
-            for line, no in zip(lines, range(len(lines))):
+            for line, no in zip(lines, list(range(len(lines)))):
                 if no == len(lines) - 1:
-                    ret += u'"%s"\n' % self.escape(line)
+                    ret += '"%s"\n' % self.escape(line)
                 else:
-                    ret += u'"%s\\n"\n' % self.escape(line)
+                    ret += '"%s\\n"\n' % self.escape(line)
         else:
-            ret += u'msgid "%s"\n' % self.escape(message)
-        ret += u'msgstr ""\n'
+            ret += 'msgid "%s"\n' % self.escape(message)
+        ret += 'msgstr ""\n'
         return ret
 
 
@@ -413,7 +432,7 @@ def fix_node_ns (node, nsdefs):
     nsdef = node.nsDefs()
     while nsdef is not None:
         nextnsdef = nsdef.next
-        if nsdefs.has_key(nsdef.name) and nsdefs[nsdef.name] == nsdef.content:
+        if nsdef.name in nsdefs and nsdefs[nsdef.name] == nsdef.content:
             node.removeNsDef(nsdef.content)
         else:
             childnsdefs[nsdef.name] = nsdef.content
@@ -458,6 +477,7 @@ class Document (object):
         if load_dtd:
             ctxt.loadSubset(1)
         if keep_entities:
+            ctxt.ctxtUseOptions(libxml2.XML_PARSE_DTDLOAD)
             ctxt.replaceEntities(0)
         else:
             ctxt.replaceEntities(1)
@@ -473,8 +493,17 @@ class Document (object):
                 elif xml_is_ns_name(child, NS_ITS, 'rules'):
                     if child.hasNsProp('href', NS_XLINK):
                         href = child.nsProp('href', NS_XLINK)
-                        href = os.path.join(os.path.dirname(filename), href)
-                        hctxt = libxml2.createFileParserCtxt(href)
+                        fileref = os.path.join(os.path.dirname(filename), href)
+                        if not os.path.exists(fileref):
+                            if opts.itspath is not None:
+                                for pathdir in opts.itspath:
+                                    fileref = os.path.join(pathdir, href)
+                                    if os.path.exists(fileref):
+                                        break
+                        if not os.path.exists(fileref):
+                            sys.stderr.write('Error: Could not locate ITS file %s\n' % href)
+                            sys.exit(1)
+                        hctxt = libxml2.createFileParserCtxt(fileref)
                         hctxt.replaceEntities(1)
                         hctxt.parseDocument()
                         root = hctxt.doc().getRootElement()
@@ -508,7 +537,7 @@ class Document (object):
         try:
             self._check_errors()
         except libxml2.parserError as e:
-            sys.stderr.write('Error: Could not parse document:\n%s\n' % str(e))
+            sys.stderr.write('Error: Could not parse document:\n%s\n' % ustr(e))
             sys.exit(1)
         self._msgs = messages
         self._its_translate_nodes = {}
@@ -532,7 +561,7 @@ class Document (object):
         for child in xml_child_iter(rules):
             if xml_is_ns_name(child, NS_ITS, 'param'):
                 name = child.nsProp('name', None)
-                if params.has_key(name):
+                if name in params:
                     value = params[name]
                 else:
                     value = child.getContent()
@@ -586,7 +615,7 @@ class Document (object):
                         oldnode = None
                     xpath.setContextNode(node)
                     idvalue = self._try_xpath_eval(xpath, idv)
-                    if isinstance(idvalue, basestring):
+                    if isinstance(idvalue, string_types):
                         self._its_id_values[node] = idvalue
                     else:
                         for val in idvalue:
@@ -606,7 +635,7 @@ class Document (object):
                             oldnode = None
                         xpath.setContextNode(node)
                         ctxt = self._try_xpath_eval(xpath, rule.nsProp('contextPointer', None))
-                        if isinstance(ctxt, basestring):
+                        if isinstance(ctxt, string_types):
                             self._itst_contexts[node] = ctxt
                         else:
                             for ctxt in ctxt:
@@ -642,7 +671,7 @@ class Document (object):
                             oldnode = None
                         xpath.setContextNode(node)
                         note = self._try_xpath_eval(xpath, sel)
-                        if isinstance(note, basestring):
+                        if isinstance(note, string_types):
                             if ref:
                                 nodenote = LocNote(locnoteref=note, locnotetype=notetype)
                             else:
@@ -751,7 +780,7 @@ class Document (object):
                     nsdef = par.nsDefs()
                     while nsdef is not None:
                         if nsdef.name is not None:
-                            if not nss.has_key(nsdef.name):
+                            if nsdef.name not in nss:
                                 nss[nsdef.name] = nsdef.content
                                 xpath.xpathRegisterNs(nsdef.name, nsdef.content)
                         nsdef = nsdef.next
@@ -770,7 +799,7 @@ class Document (object):
                 nsdef = par.nsDefs()
                 while nsdef is not None:
                     if nsdef.name is not None:
-                        if not nss.has_key(nsdef.name):
+                        if nsdef.name not in nss:
                             nss[nsdef.name] = nsdef.content
                             xpath.xpathRegisterNs(nsdef.name, nsdef.content)
                     nsdef = nsdef.next
@@ -821,7 +850,8 @@ class Document (object):
             elif select == 'year' and len(trdata) == 4:
                 val = trdata[3]
             if val is not None:
-                val = val.encode('utf-8')
+                if not PY3:
+                    val = val.encode('utf-8')
                 parent.addContent(val)
         else:
             newnode = node.copyNode(2)
@@ -875,7 +905,7 @@ class Document (object):
                 prevtext = node.prev.content
                 if re.sub('\s+', '', prevtext) == '':
                     prevnode = node.prev
-            for lang in sorted(translations.keys(), reverse=True):
+            for lang in sorted(list(translations.keys()), reverse=True):
                 locale = self.get_its_locale_filter(node)
                 lmatch = match_locale_list(locale[0], lang)
                 if (locale[1] == 'include' and not lmatch) or (locale[1] == 'exclude' and lmatch):
@@ -966,7 +996,9 @@ class Document (object):
         for attr in trans_attrs:
             newcontent = translations.ugettext(attr.get_content())
             if newcontent:
-                newnode.setProp(attr.name, translations.ugettext(attr.get_content()))
+                if not PY3:
+                    newcontent = newcontent.encode('utf-8')
+                newnode.setProp(attr.name, newcontent)
 
     def get_translated (self, node, translations, strict=False, lang=None):
         msg = self._msgs.get_message_by_node(node)
@@ -993,24 +1025,27 @@ class Document (object):
         nss['_'] = NS_BLANK
         try:
             blurb = node.doc.intSubset().serialize('utf-8')
-        except:
+        except Exception:
             blurb = ''
-        blurb += '<' + node.name
-        for nsname in nss.keys():
+        blurb += '<' + ustr(node.name, 'utf-8')
+        for nsname in list(nss.keys()):
             if nsname is None:
                 blurb += ' xmlns="%s"' % nss[nsname]
             else:
                 blurb += ' xmlns:%s="%s"' % (nsname, nss[nsname])
-        blurb += '>%s</%s>' % (trans.encode('utf-8'), node.name)
+        blurb += '>%s</%s>' % (trans, ustr(node.name, 'utf-8'))
+        if not PY3:
+            blurb = blurb.encode('utf-8')
         ctxt = libxml2.createDocParserCtxt(blurb)
         if self._load_dtd:
             ctxt.loadSubset(1)
+        ctxt.ctxtUseOptions(libxml2.XML_PARSE_DTDLOAD)
         ctxt.replaceEntities(0)
         ctxt.parseDocument()
         trnode = ctxt.doc().getRootElement()
         try:
             self._check_errors()
-        except libxml2.parserError as e:
+        except libxml2.parserError:
             if strict:
                 raise
             else:
@@ -1033,7 +1068,17 @@ class Document (object):
                         repl = self.get_translated(ph_node, translations, strict=strict, lang=lang)
                         child.replaceNode(repl)
                 scan_node(child)
-        scan_node(trnode)
+        try:
+            scan_node(trnode)
+        except:
+            if strict:
+                raise
+            else:
+                sys.stderr.write('Warning: Could not merge %stranslation for msgid:\n%s\n' % (
+                    (lang + ' ') if lang is not None else '',
+                    msgstr.encode('utf-8')))
+                self._xml_err = ''
+                return node
         retnode = node.copyNode(2)
         for child in xml_child_iter(trnode):
             retnode.addChild(child.copyNode(1))
@@ -1093,7 +1138,7 @@ class Document (object):
                 if self.get_its_locale_filter(node) != ('*', 'include'):
                     msg.set_locale_filter(self.get_its_locale_filter(node))
                 msg.add_source('%s:%i' % (self._doc.name, node.lineNo()))
-                msg.add_marker('%s/%s' % (node.parent.name, node.name))
+                msg.add_marker('%s/%s' % (ustr(node.parent.name, 'utf-8'), ustr(node.name, 'utf-8')))
             else:
                 withinText = True
                 msg.add_start_tag(node)
@@ -1148,7 +1193,7 @@ class Document (object):
                 msg.add_end_tag(node)
 
     def generate_external_resource_message(self, node):
-        if not self._its_externals.has_key(node):
+        if node not in self._its_externals:
             return
         resref = self._its_externals[node]
         if node.type == 'element':
@@ -1162,10 +1207,10 @@ class Document (object):
         msg = Message()
         try:
             fullfile = os.path.join(os.path.dirname(self._filename), resref)
-            filefp = open(fullfile)
+            filefp = open(fullfile, 'rb')
             filemd5 = hashlib.md5(filefp.read()).hexdigest()
             filefp.close()
-        except:
+        except Exception:
             filemd5 = '__failed__'
         txt = "external ref='%s' md5='%s'" % (resref, filemd5)
         msg.set_context('_')
@@ -1189,7 +1234,7 @@ class Document (object):
         while node.type in ('attribute', 'element'):
             if node.getSpacePreserve() == 1:
                 return True
-            if self._its_preserve_space_nodes.has_key(node):
+            if node in self._its_preserve_space_nodes:
                 return (self._its_preserve_space_nodes[node] == 'preserve')
             node = node.parent
         return False
@@ -1200,7 +1245,7 @@ class Document (object):
             val = node.nsProp('translate', NS_ITS)
         elif xml_is_ns_name(node, NS_ITS, 'span') and node.hasNsProp('translate', None):
             val = node.nsProp('translate', None)
-        elif self._its_translate_nodes.has_key(node):
+        elif node in self._its_translate_nodes:
             val = self._its_translate_nodes[node]
         if val is not None:
             return val
@@ -1232,7 +1277,7 @@ class Document (object):
             else:
                 typ = 'include'
             return (lst, typ)
-        if (xml_is_ns_name(node, NS_ITS, 'span') and 
+        if (xml_is_ns_name(node, NS_ITS, 'span') and
             (node.hasNsProp('localeFilterList', None) or node.hasNsProp('localeFilterType', None))):
             if node.hasNsProp('localeFilterList', None):
                 lst = node.nsProp('localeFilterList', None)
@@ -1243,7 +1288,7 @@ class Document (object):
             else:
                 typ = 'include'
             return (lst, typ)
-        if self._its_locale_filters.has_key(node):
+        if node in self._its_locale_filters:
             return self._its_locale_filters[node]
         if node.parent.type == 'element':
             return self.get_its_locale_filter(node.parent)
@@ -1298,7 +1343,7 @@ class Document (object):
             val = self.get_its_loc_notes(node)
             if len(val) > 0:
                 if val[0].locnote is not None:
-                    compval = 'locNote="%s"\tlocNoteType="%s"' % (str(val[0]), val[0].locnotetype)
+                    compval = 'locNote="%s"\tlocNoteType="%s"' % (ustr(val[0]), val[0].locnotetype)
                 elif val[0].locnoteref is not None:
                     compval = 'locNoteRef="%s"\tlocNoteType="%s"' % (val[0].locnoteref, val[0].locnotetype)
         elif category == 'externalResourceRef':
@@ -1321,7 +1366,7 @@ class Document (object):
             out.write('%s\t%s\r\n' % (xml_get_node_path(node), compval))
         else:
             out.write('%s\r\n' % (xml_get_node_path(node)))
-        for attr in sorted(xml_attr_iter(node), lambda x, y: cmp(str(x), str(y))):
+        for attr in sorted(xml_attr_iter(node), key=ustr):
             self.output_test_data(category, out, attr)
         for child in xml_child_iter(node):
             if child.type == 'element':
@@ -1396,7 +1441,9 @@ def convert_locale (locale):
 
 if __name__ == '__main__':
     options = optparse.OptionParser()
-    options.set_usage('\n  itstool [OPTIONS] [XMLFILES]\n  itstool -m <MOFILE> [OPTIONS] [XMLFILES]')
+    options.set_usage('\n  itstool [OPTIONS] [XMLFILES]\n' +
+                      '  itstool -m <MOFILE> [OPTIONS] [XMLFILES]\n' +
+                      '  itstool -j <XMLFILE> [OPTIONS] [MOFILES]')
     options.add_option('-i', '--its',
                        action='append',
                        dest='itsfile',
@@ -1425,6 +1472,12 @@ if __name__ == '__main__':
                        default=None,
                        metavar='OUT',
                        help='Output PO files to file OUT or XML files in directory OUT')
+    options.add_option('--path',
+                       action='append',
+                       dest='itspath',
+                       default=None,
+                       metavar='PATHS',
+                       help='Extra path where ITS files may be found (can specify multiple times)')
     options.add_option('-s', '--strict',
                        action='store_true',
                        dest='strict',
@@ -1481,7 +1534,7 @@ if __name__ == '__main__':
             out = sys.stdout
         else:
             try:
-                out = file(opts.output, 'w')
+                out = io.open(opts.output, 'wt', encoding='utf-8')
             except:
                 sys.stderr.write('Error: Cannot write to file %s\n' % opts.output)
                 sys.exit(1)
@@ -1495,6 +1548,8 @@ if __name__ == '__main__':
         except:
             sys.stderr.write('Error: cannot open mo file %s\n' % opts.merge)
             sys.exit(1)
+        if PY3:
+            translations.ugettext = translations.gettext
         translations.add_fallback(NoneTranslations())
         if opts.lang is None:
             opts.lang = convert_locale(os.path.splitext(os.path.basename(opts.merge))[0])
@@ -1506,7 +1561,7 @@ if __name__ == '__main__':
             if opts.output == '-':
                 out = sys.stdout
             else:
-                out = file(opts.output, 'w')
+                out = open(opts.output, 'w')
         else:
             sys.stderr.write('Error: Non-directory output for multiple files\n')
             sys.exit(1)
@@ -1520,12 +1575,20 @@ if __name__ == '__main__':
             try:
                 doc.merge_translations(translations, opts.lang, strict=opts.strict)
             except Exception as e:
-                sys.stderr.write('Error: Could not merge translations:\n%s\n' % str(e))
+                sys.stderr.write('Error: Could not merge translations:\n%s\n' % ustr(e))
                 sys.exit(1)
+            serialized = doc._doc.serialize('utf-8')
+            if PY3:
+                # For some reason, under py3, our serialized data is returns as a str.
+                # Let's encode it to bytes
+                serialized = serialized.encode('utf-8')
             fout = out
-            if isinstance(fout, basestring):
-                fout = file(os.path.join(fout, os.path.basename(filename)), 'w')
-            fout.write(doc._doc.serialize('utf-8'))
+            fout_is_str = isinstance(fout, string_types)
+            if fout_is_str:
+                fout = open(os.path.join(fout, os.path.basename(filename)), 'wb')
+            fout.write(serialized)
+            if fout_is_str:
+                fout.close()
     elif opts.join is not None:
         translations = {}
         for filename in args[1:]:
@@ -1535,14 +1598,16 @@ if __name__ == '__main__':
                 sys.stderr.write('Error: cannot open mo file %s\n' % filename)
                 sys.exit(1)
             thistr.add_fallback(NoneTranslations())
+            if PY3:
+                thistr.ugettext = thistr.gettext
             lang = convert_locale(os.path.splitext(os.path.basename(filename))[0])
             translations[lang] = thistr
         if opts.output is None:
             out = sys.stdout
         elif os.path.isdir(opts.output):
-            out = file(os.path.join(opts.output, os.path.basename(filename)), 'w')
+            out = open(os.path.join(opts.output, os.path.basename(filename)), 'w')
         else:
-            out = file(opts.output, 'w')
+            out = open(opts.output, 'w')
         messages = MessageList()
         doc = Document(opts.join, messages)
         doc.apply_its_rules(not(opts.nobuiltins), params=params)
@@ -1555,9 +1620,9 @@ if __name__ == '__main__':
             try:
                 doc.merge_translations(translations, opts.lang, strict=opts.strict)
             except Exception as e:
-                sys.stderr.write('Error: Could not merge translations:\n%s\n' % str(e))
+                sys.stderr.write('Error: Could not merge translations:\n%s\n' % ustr(e))
                 sys.exit(1)
             fout = out
-            if isinstance(fout, basestring):
-                fout = file(os.path.join(fout, os.path.basename(filename)), 'w')
+            if isinstance(fout, string_types):
+                fout = open(os.path.join(fout, os.path.basename(filename)), 'w')
             fout.write(doc._doc.serialize('utf-8'))
index a3e334d4d452d80cf31d77eed5f0a1039e5481f0..77deef3b2d4c9f755fb1ec14773b25136ab114f7 100644 (file)
--- a/itstool.1
+++ b/itstool.1
@@ -1,4 +1,4 @@
-.TH "ITSTOOL" "1" "December 2013" "itstool 2.0.2"
+.TH "ITSTOOL" "1" "December 2013" "itstool 2.0.3"
 
 .SH "NAME"
 itstool \- convert between XML and PO using ITS
index 96fb913caff406e8569a4b2f182ba755e958d0c3..60f73dd730c2fb37d76b5d62e88ea285e99effc3 100755 (executable)
@@ -16,6 +16,8 @@
 # with ITS Tool; if not, write to the Free Software Foundation, 59 Temple
 # Place, Suite 330, Boston, MA  0211-1307  USA.
 #
+from __future__ import print_function
+from __future__ import unicode_literals
 
 VERSION="@VERSION@"
 DATADIR="@DATADIR@"
@@ -29,6 +31,22 @@ import os.path
 import re
 import sys
 import time
+import io
+
+PY3 = sys.version_info[0] == 3
+if PY3:
+    string_types = str,
+    def ustr(s, encoding=None):
+        if isinstance(s, str):
+            return s
+        elif encoding:
+            return str(s, encoding)
+        else:
+            return str(s)
+    ustr_type = str
+else:
+    string_types = basestring,
+    ustr = ustr_type = unicode
 
 NS_ITS = 'http://www.w3.org/2005/11/its'
 NS_ITST = 'http://itstool.org/extensions/'
@@ -81,14 +99,14 @@ class MessageList (object):
         return self._by_node.get(node, None)
 
     def get_nodes_with_messages (self):
-        return self._by_node.keys()
+        return list(self._by_node.keys())
 
     def output (self, out):
         msgs = []
         msgdict = {}
         for msg in self._messages:
             key = (msg.get_context(), msg.get_string())
-            if msgdict.has_key(key):
+            if key in msgdict:
                 for source in msg.get_sources():
                     msgdict[key].add_source(source)
                 for marker in msg.get_markers():
@@ -105,7 +123,7 @@ class MessageList (object):
                         msgdict[key].set_locale_filter('%s, %s' % (locale, msg.get_locale_filter()))
                     else:
                         msgdict[key].set_locale_filter(msg.get_locale_filter())
-                
+
             else:
                 msgs.append(msg)
                 msgdict[key] = msg
@@ -121,13 +139,13 @@ class MessageList (object):
         out.write('"Content-Transfer-Encoding: 8bit\\n"\n')
         out.write('\n')
         for msg in msgs:
-            out.write(msg.format().encode('utf-8'))
+            out.write(msg.format())
             out.write('\n')
 
 
 class Comment (object):
     def __init__ (self, text):
-        self._text = str(text)
+        self._text = ustr(text)
         assert(text is not None)
         self._markers = []
 
@@ -141,10 +159,10 @@ class Comment (object):
         return self._text
 
     def format (self):
-        ret = u''
+        ret = ''
         markers = {}
         for marker in self._markers:
-            if not markers.has_key(marker):
+            if marker not in markers:
                 ret += '#. (itstool) comment: ' + marker + '\n'
                 markers[marker] = marker
         if '\n' in self._text:
@@ -154,7 +172,7 @@ class Comment (object):
                     doadd = True
                 if not doadd:
                     continue
-                ret += u'#. %s\n' % line
+                ret += '#. %s\n' % line
         else:
             text = self._text
             while len(text) > 72:
@@ -163,12 +181,18 @@ class Comment (object):
                     j = text.find(' ')
                 if j == -1:
                     break
-                ret += u'#. %s\n' % text[:j]
+                ret += '#. %s\n' % text[:j]
                 text = text[j+1:]
             ret += '#. %s\n' % text
         return ret
 
 
+class Placeholder (object):
+    def __init__ (self, node):
+        self.node = node
+        self.name = ustr(node.name, 'utf-8')
+
+
 class Message (object):
     def __init__ (self):
         self._message = []
@@ -187,19 +211,14 @@ class Message (object):
             return "Empty message"
         return self.get_string()
 
-    class Placeholder (object):
-        def __init__ (self, node):
-            self.node = node
-            self.name = unicode(node.name, 'utf-8')
-
     def escape (self, text):
         return text.replace('\\','\\\\').replace('"', "\\\"").replace("\n","\\n").replace("\t","\\t")
 
     def add_text (self, text):
-        if len(self._message) == 0 or not(isinstance(self._message[-1], basestring)):
+        if len(self._message) == 0 or not(isinstance(self._message[-1], string_types)):
             self._message.append('')
-        if not isinstance(text, unicode):
-            text = unicode(text, 'utf-8')
+        if not isinstance(text, ustr_type):
+            text = ustr(text, 'utf-8')
         self._message[-1] += text.replace('&', '&amp;').replace('<', '&lt;').replace('>', '&gt;')
         if re.sub('\s+', ' ', text).strip() != '':
             self._empty = False
@@ -209,32 +228,32 @@ class Message (object):
         self._empty = False
 
     def add_placeholder (self, node):
-        holder = Message.Placeholder(node)
+        holder = Placeholder(node)
         self._placeholders.append(holder)
         self._message.append(holder)
 
     def get_placeholder (self, name):
         placeholder = 1
         for holder in self._placeholders:
-            holdername = u'%s-%i' % (holder.name, placeholder)
-            if holdername == unicode(name, 'utf-8'):
+            holdername = '%s-%i' % (holder.name, placeholder)
+            if holdername == ustr(name, 'utf-8'):
                 return holder
             placeholder += 1
 
     def add_start_tag (self, node):
-        if len(self._message) == 0 or not(isinstance(self._message[-1], basestring)):
+        if len(self._message) == 0 or not(isinstance(self._message[-1], string_types)):
             self._message.append('')
         if node.ns() is not None and node.ns().name is not None:
-            self._message[-1] += (u'<%s:%s' % (unicode(node.ns().name, 'utf-8'), unicode(node.name, 'utf-8')))
+            self._message[-1] += ('<%s:%s' % (ustr(node.ns().name, 'utf-8'), ustr(node.name, 'utf-8')))
         else:
-            self._message[-1] += (u'<%s' % unicode(node.name, 'utf-8'))
+            self._message[-1] += ('<%s' % ustr(node.name, 'utf-8'))
         for prop in xml_attr_iter(node):
             name = prop.name
             if prop.ns() is not None:
                 name = prop.ns().name + ':' + name
             atval = prop.content
-            if not isinstance(atval, unicode):
-                atval = unicode(atval, 'utf-8')
+            if not isinstance(atval, ustr_type):
+                atval = ustr(atval, 'utf-8')
             atval = atval.replace('&', '&amp;').replace('<', '&lt;').replace('>', '&gt;').replace('"', '&quot;')
             self._message += " %s=\"%s\"" % (name, atval)
         if node.children is not None:
@@ -244,12 +263,12 @@ class Message (object):
 
     def add_end_tag (self, node):
         if node.children is not None:
-            if len(self._message) == 0 or not(isinstance(self._message[-1], basestring)):
+            if len(self._message) == 0 or not(isinstance(self._message[-1], string_types)):
                 self._message.append('')
             if node.ns() is not None and node.ns().name is not None:
-                self._message[-1] += (u'</%s:%s>' % (unicode(node.ns().name, 'utf-8'), unicode(node.name, 'utf-8')))
+                self._message[-1] += ('</%s:%s>' % (ustr(node.ns().name, 'utf-8'), ustr(node.name, 'utf-8')))
             else:
-                self._message[-1] += (u'</%s>' % unicode(node.name, 'utf-8'))
+                self._message[-1] += ('</%s>' % ustr(node.name, 'utf-8'))
 
     def is_empty (self):
         return self._empty
@@ -261,16 +280,16 @@ class Message (object):
         self._ctxt = ctxt
 
     def add_source (self, source):
-        if not isinstance(source, unicode):
-            source = unicode(source, 'utf-8')
+        if not isinstance(source, ustr_type):
+            source = ustr(source, 'utf-8')
         self._sources.append(source)
 
     def get_sources (self):
         return self._sources
 
     def add_marker (self, marker):
-        if not isinstance(marker, unicode):
-            marker = unicode(marker, 'utf-8')
+        if not isinstance(marker, ustr_type):
+            marker = ustr(marker, 'utf-8')
         self._markers.append(marker)
 
     def get_markers (self):
@@ -290,13 +309,13 @@ class Message (object):
         return self._comments
 
     def get_string (self):
-        message = u''
+        message = ''
         placeholder = 1
         for msg in self._message:
-            if isinstance(msg, basestring):
+            if isinstance(msg, string_types):
                 message += msg
-            elif isinstance(msg, Message.Placeholder):
-                message += u'<_:%s-%i/>' % (msg.name, placeholder)
+            elif isinstance(msg, Placeholder):
+                message += '<_:%s-%i/>' % (msg.name, placeholder)
                 placeholder += 1
         if not self._preserve:
             message = re.sub('\s+', ' ', message).strip()
@@ -315,10 +334,10 @@ class Message (object):
         self._locale_filter = locale
 
     def format (self):
-        ret = u''
+        ret = ''
         markers = {}
         for marker in self._markers:
-            if not markers.has_key(marker):
+            if marker not in markers:
                 ret += '#. (itstool) path: ' + marker + '\n'
                 markers[marker] = marker
         for idvalue in self._id_values:
@@ -329,7 +348,7 @@ class Message (object):
         commentsdict = {}
         for comment in self._comments:
             key = comment.get_text()
-            if commentsdict.has_key(key):
+            if key in commentsdict:
                 for marker in comment.get_markers():
                     commentsdict[key].add_marker(marker)
             else:
@@ -340,23 +359,23 @@ class Message (object):
                 ret += '#.\n'
             ret += comments[i].format()
         for source in self._sources:
-            ret += u'#: %s\n' % source
+            ret += '#: %s\n' % source
         if self._preserve:
-            ret += u'#, no-wrap\n'
+            ret += '#, no-wrap\n'
         if self._ctxt is not None:
-            ret += u'msgctxt "%s"\n' % self._ctxt
+            ret += 'msgctxt "%s"\n' % self._ctxt
         message = self.get_string()
         if self._preserve:
-            ret += u'msgid ""\n'
+            ret += 'msgid ""\n'
             lines = message.split('\n')
-            for line, no in zip(lines, range(len(lines))):
+            for line, no in zip(lines, list(range(len(lines)))):
                 if no == len(lines) - 1:
-                    ret += u'"%s"\n' % self.escape(line)
+                    ret += '"%s"\n' % self.escape(line)
                 else:
-                    ret += u'"%s\\n"\n' % self.escape(line)
+                    ret += '"%s\\n"\n' % self.escape(line)
         else:
-            ret += u'msgid "%s"\n' % self.escape(message)
-        ret += u'msgstr ""\n'
+            ret += 'msgid "%s"\n' % self.escape(message)
+        ret += 'msgstr ""\n'
         return ret
 
 
@@ -413,7 +432,7 @@ def fix_node_ns (node, nsdefs):
     nsdef = node.nsDefs()
     while nsdef is not None:
         nextnsdef = nsdef.next
-        if nsdefs.has_key(nsdef.name) and nsdefs[nsdef.name] == nsdef.content:
+        if nsdef.name in nsdefs and nsdefs[nsdef.name] == nsdef.content:
             node.removeNsDef(nsdef.content)
         else:
             childnsdefs[nsdef.name] = nsdef.content
@@ -458,6 +477,7 @@ class Document (object):
         if load_dtd:
             ctxt.loadSubset(1)
         if keep_entities:
+            ctxt.ctxtUseOptions(libxml2.XML_PARSE_DTDLOAD)
             ctxt.replaceEntities(0)
         else:
             ctxt.replaceEntities(1)
@@ -473,8 +493,17 @@ class Document (object):
                 elif xml_is_ns_name(child, NS_ITS, 'rules'):
                     if child.hasNsProp('href', NS_XLINK):
                         href = child.nsProp('href', NS_XLINK)
-                        href = os.path.join(os.path.dirname(filename), href)
-                        hctxt = libxml2.createFileParserCtxt(href)
+                        fileref = os.path.join(os.path.dirname(filename), href)
+                        if not os.path.exists(fileref):
+                            if opts.itspath is not None:
+                                for pathdir in opts.itspath:
+                                    fileref = os.path.join(pathdir, href)
+                                    if os.path.exists(fileref):
+                                        break
+                        if not os.path.exists(fileref):
+                            sys.stderr.write('Error: Could not locate ITS file %s\n' % href)
+                            sys.exit(1)
+                        hctxt = libxml2.createFileParserCtxt(fileref)
                         hctxt.replaceEntities(1)
                         hctxt.parseDocument()
                         root = hctxt.doc().getRootElement()
@@ -508,7 +537,7 @@ class Document (object):
         try:
             self._check_errors()
         except libxml2.parserError as e:
-            sys.stderr.write('Error: Could not parse document:\n%s\n' % str(e))
+            sys.stderr.write('Error: Could not parse document:\n%s\n' % ustr(e))
             sys.exit(1)
         self._msgs = messages
         self._its_translate_nodes = {}
@@ -532,7 +561,7 @@ class Document (object):
         for child in xml_child_iter(rules):
             if xml_is_ns_name(child, NS_ITS, 'param'):
                 name = child.nsProp('name', None)
-                if params.has_key(name):
+                if name in params:
                     value = params[name]
                 else:
                     value = child.getContent()
@@ -586,7 +615,7 @@ class Document (object):
                         oldnode = None
                     xpath.setContextNode(node)
                     idvalue = self._try_xpath_eval(xpath, idv)
-                    if isinstance(idvalue, basestring):
+                    if isinstance(idvalue, string_types):
                         self._its_id_values[node] = idvalue
                     else:
                         for val in idvalue:
@@ -606,7 +635,7 @@ class Document (object):
                             oldnode = None
                         xpath.setContextNode(node)
                         ctxt = self._try_xpath_eval(xpath, rule.nsProp('contextPointer', None))
-                        if isinstance(ctxt, basestring):
+                        if isinstance(ctxt, string_types):
                             self._itst_contexts[node] = ctxt
                         else:
                             for ctxt in ctxt:
@@ -642,7 +671,7 @@ class Document (object):
                             oldnode = None
                         xpath.setContextNode(node)
                         note = self._try_xpath_eval(xpath, sel)
-                        if isinstance(note, basestring):
+                        if isinstance(note, string_types):
                             if ref:
                                 nodenote = LocNote(locnoteref=note, locnotetype=notetype)
                             else:
@@ -751,7 +780,7 @@ class Document (object):
                     nsdef = par.nsDefs()
                     while nsdef is not None:
                         if nsdef.name is not None:
-                            if not nss.has_key(nsdef.name):
+                            if nsdef.name not in nss:
                                 nss[nsdef.name] = nsdef.content
                                 xpath.xpathRegisterNs(nsdef.name, nsdef.content)
                         nsdef = nsdef.next
@@ -770,7 +799,7 @@ class Document (object):
                 nsdef = par.nsDefs()
                 while nsdef is not None:
                     if nsdef.name is not None:
-                        if not nss.has_key(nsdef.name):
+                        if nsdef.name not in nss:
                             nss[nsdef.name] = nsdef.content
                             xpath.xpathRegisterNs(nsdef.name, nsdef.content)
                     nsdef = nsdef.next
@@ -821,7 +850,8 @@ class Document (object):
             elif select == 'year' and len(trdata) == 4:
                 val = trdata[3]
             if val is not None:
-                val = val.encode('utf-8')
+                if not PY3:
+                    val = val.encode('utf-8')
                 parent.addContent(val)
         else:
             newnode = node.copyNode(2)
@@ -875,7 +905,7 @@ class Document (object):
                 prevtext = node.prev.content
                 if re.sub('\s+', '', prevtext) == '':
                     prevnode = node.prev
-            for lang in sorted(translations.keys(), reverse=True):
+            for lang in sorted(list(translations.keys()), reverse=True):
                 locale = self.get_its_locale_filter(node)
                 lmatch = match_locale_list(locale[0], lang)
                 if (locale[1] == 'include' and not lmatch) or (locale[1] == 'exclude' and lmatch):
@@ -966,7 +996,9 @@ class Document (object):
         for attr in trans_attrs:
             newcontent = translations.ugettext(attr.get_content())
             if newcontent:
-                newnode.setProp(attr.name, translations.ugettext(attr.get_content()))
+                if not PY3:
+                    newcontent = newcontent.encode('utf-8')
+                newnode.setProp(attr.name, newcontent)
 
     def get_translated (self, node, translations, strict=False, lang=None):
         msg = self._msgs.get_message_by_node(node)
@@ -993,24 +1025,27 @@ class Document (object):
         nss['_'] = NS_BLANK
         try:
             blurb = node.doc.intSubset().serialize('utf-8')
-        except:
+        except Exception:
             blurb = ''
-        blurb += '<' + node.name
-        for nsname in nss.keys():
+        blurb += '<' + ustr(node.name, 'utf-8')
+        for nsname in list(nss.keys()):
             if nsname is None:
                 blurb += ' xmlns="%s"' % nss[nsname]
             else:
                 blurb += ' xmlns:%s="%s"' % (nsname, nss[nsname])
-        blurb += '>%s</%s>' % (trans.encode('utf-8'), node.name)
+        blurb += '>%s</%s>' % (trans, ustr(node.name, 'utf-8'))
+        if not PY3:
+            blurb = blurb.encode('utf-8')
         ctxt = libxml2.createDocParserCtxt(blurb)
         if self._load_dtd:
             ctxt.loadSubset(1)
+        ctxt.ctxtUseOptions(libxml2.XML_PARSE_DTDLOAD)
         ctxt.replaceEntities(0)
         ctxt.parseDocument()
         trnode = ctxt.doc().getRootElement()
         try:
             self._check_errors()
-        except libxml2.parserError as e:
+        except libxml2.parserError:
             if strict:
                 raise
             else:
@@ -1033,7 +1068,17 @@ class Document (object):
                         repl = self.get_translated(ph_node, translations, strict=strict, lang=lang)
                         child.replaceNode(repl)
                 scan_node(child)
-        scan_node(trnode)
+        try:
+            scan_node(trnode)
+        except:
+            if strict:
+                raise
+            else:
+                sys.stderr.write('Warning: Could not merge %stranslation for msgid:\n%s\n' % (
+                    (lang + ' ') if lang is not None else '',
+                    msgstr.encode('utf-8')))
+                self._xml_err = ''
+                return node
         retnode = node.copyNode(2)
         for child in xml_child_iter(trnode):
             retnode.addChild(child.copyNode(1))
@@ -1093,7 +1138,7 @@ class Document (object):
                 if self.get_its_locale_filter(node) != ('*', 'include'):
                     msg.set_locale_filter(self.get_its_locale_filter(node))
                 msg.add_source('%s:%i' % (self._doc.name, node.lineNo()))
-                msg.add_marker('%s/%s' % (node.parent.name, node.name))
+                msg.add_marker('%s/%s' % (ustr(node.parent.name, 'utf-8'), ustr(node.name, 'utf-8')))
             else:
                 withinText = True
                 msg.add_start_tag(node)
@@ -1148,7 +1193,7 @@ class Document (object):
                 msg.add_end_tag(node)
 
     def generate_external_resource_message(self, node):
-        if not self._its_externals.has_key(node):
+        if node not in self._its_externals:
             return
         resref = self._its_externals[node]
         if node.type == 'element':
@@ -1162,10 +1207,10 @@ class Document (object):
         msg = Message()
         try:
             fullfile = os.path.join(os.path.dirname(self._filename), resref)
-            filefp = open(fullfile)
+            filefp = open(fullfile, 'rb')
             filemd5 = hashlib.md5(filefp.read()).hexdigest()
             filefp.close()
-        except:
+        except Exception:
             filemd5 = '__failed__'
         txt = "external ref='%s' md5='%s'" % (resref, filemd5)
         msg.set_context('_')
@@ -1189,7 +1234,7 @@ class Document (object):
         while node.type in ('attribute', 'element'):
             if node.getSpacePreserve() == 1:
                 return True
-            if self._its_preserve_space_nodes.has_key(node):
+            if node in self._its_preserve_space_nodes:
                 return (self._its_preserve_space_nodes[node] == 'preserve')
             node = node.parent
         return False
@@ -1200,7 +1245,7 @@ class Document (object):
             val = node.nsProp('translate', NS_ITS)
         elif xml_is_ns_name(node, NS_ITS, 'span') and node.hasNsProp('translate', None):
             val = node.nsProp('translate', None)
-        elif self._its_translate_nodes.has_key(node):
+        elif node in self._its_translate_nodes:
             val = self._its_translate_nodes[node]
         if val is not None:
             return val
@@ -1232,7 +1277,7 @@ class Document (object):
             else:
                 typ = 'include'
             return (lst, typ)
-        if (xml_is_ns_name(node, NS_ITS, 'span') and 
+        if (xml_is_ns_name(node, NS_ITS, 'span') and
             (node.hasNsProp('localeFilterList', None) or node.hasNsProp('localeFilterType', None))):
             if node.hasNsProp('localeFilterList', None):
                 lst = node.nsProp('localeFilterList', None)
@@ -1243,7 +1288,7 @@ class Document (object):
             else:
                 typ = 'include'
             return (lst, typ)
-        if self._its_locale_filters.has_key(node):
+        if node in self._its_locale_filters:
             return self._its_locale_filters[node]
         if node.parent.type == 'element':
             return self.get_its_locale_filter(node.parent)
@@ -1298,7 +1343,7 @@ class Document (object):
             val = self.get_its_loc_notes(node)
             if len(val) > 0:
                 if val[0].locnote is not None:
-                    compval = 'locNote="%s"\tlocNoteType="%s"' % (str(val[0]), val[0].locnotetype)
+                    compval = 'locNote="%s"\tlocNoteType="%s"' % (ustr(val[0]), val[0].locnotetype)
                 elif val[0].locnoteref is not None:
                     compval = 'locNoteRef="%s"\tlocNoteType="%s"' % (val[0].locnoteref, val[0].locnotetype)
         elif category == 'externalResourceRef':
@@ -1321,7 +1366,7 @@ class Document (object):
             out.write('%s\t%s\r\n' % (xml_get_node_path(node), compval))
         else:
             out.write('%s\r\n' % (xml_get_node_path(node)))
-        for attr in sorted(xml_attr_iter(node), lambda x, y: cmp(str(x), str(y))):
+        for attr in sorted(xml_attr_iter(node), key=ustr):
             self.output_test_data(category, out, attr)
         for child in xml_child_iter(node):
             if child.type == 'element':
@@ -1396,7 +1441,9 @@ def convert_locale (locale):
 
 if __name__ == '__main__':
     options = optparse.OptionParser()
-    options.set_usage('\n  itstool [OPTIONS] [XMLFILES]\n  itstool -m <MOFILE> [OPTIONS] [XMLFILES]')
+    options.set_usage('\n  itstool [OPTIONS] [XMLFILES]\n' +
+                      '  itstool -m <MOFILE> [OPTIONS] [XMLFILES]\n' +
+                      '  itstool -j <XMLFILE> [OPTIONS] [MOFILES]')
     options.add_option('-i', '--its',
                        action='append',
                        dest='itsfile',
@@ -1425,6 +1472,12 @@ if __name__ == '__main__':
                        default=None,
                        metavar='OUT',
                        help='Output PO files to file OUT or XML files in directory OUT')
+    options.add_option('--path',
+                       action='append',
+                       dest='itspath',
+                       default=None,
+                       metavar='PATHS',
+                       help='Extra path where ITS files may be found (can specify multiple times)')
     options.add_option('-s', '--strict',
                        action='store_true',
                        dest='strict',
@@ -1481,7 +1534,7 @@ if __name__ == '__main__':
             out = sys.stdout
         else:
             try:
-                out = file(opts.output, 'w')
+                out = io.open(opts.output, 'wt', encoding='utf-8')
             except:
                 sys.stderr.write('Error: Cannot write to file %s\n' % opts.output)
                 sys.exit(1)
@@ -1495,6 +1548,8 @@ if __name__ == '__main__':
         except:
             sys.stderr.write('Error: cannot open mo file %s\n' % opts.merge)
             sys.exit(1)
+        if PY3:
+            translations.ugettext = translations.gettext
         translations.add_fallback(NoneTranslations())
         if opts.lang is None:
             opts.lang = convert_locale(os.path.splitext(os.path.basename(opts.merge))[0])
@@ -1506,7 +1561,7 @@ if __name__ == '__main__':
             if opts.output == '-':
                 out = sys.stdout
             else:
-                out = file(opts.output, 'w')
+                out = open(opts.output, 'w')
         else:
             sys.stderr.write('Error: Non-directory output for multiple files\n')
             sys.exit(1)
@@ -1520,12 +1575,20 @@ if __name__ == '__main__':
             try:
                 doc.merge_translations(translations, opts.lang, strict=opts.strict)
             except Exception as e:
-                sys.stderr.write('Error: Could not merge translations:\n%s\n' % str(e))
+                sys.stderr.write('Error: Could not merge translations:\n%s\n' % ustr(e))
                 sys.exit(1)
+            serialized = doc._doc.serialize('utf-8')
+            if PY3:
+                # For some reason, under py3, our serialized data is returns as a str.
+                # Let's encode it to bytes
+                serialized = serialized.encode('utf-8')
             fout = out
-            if isinstance(fout, basestring):
-                fout = file(os.path.join(fout, os.path.basename(filename)), 'w')
-            fout.write(doc._doc.serialize('utf-8'))
+            fout_is_str = isinstance(fout, string_types)
+            if fout_is_str:
+                fout = open(os.path.join(fout, os.path.basename(filename)), 'wb')
+            fout.write(serialized)
+            if fout_is_str:
+                fout.close()
     elif opts.join is not None:
         translations = {}
         for filename in args[1:]:
@@ -1535,14 +1598,16 @@ if __name__ == '__main__':
                 sys.stderr.write('Error: cannot open mo file %s\n' % filename)
                 sys.exit(1)
             thistr.add_fallback(NoneTranslations())
+            if PY3:
+                thistr.ugettext = thistr.gettext
             lang = convert_locale(os.path.splitext(os.path.basename(filename))[0])
             translations[lang] = thistr
         if opts.output is None:
             out = sys.stdout
         elif os.path.isdir(opts.output):
-            out = file(os.path.join(opts.output, os.path.basename(filename)), 'w')
+            out = open(os.path.join(opts.output, os.path.basename(filename)), 'w')
         else:
-            out = file(opts.output, 'w')
+            out = open(opts.output, 'w')
         messages = MessageList()
         doc = Document(opts.join, messages)
         doc.apply_its_rules(not(opts.nobuiltins), params=params)
@@ -1555,9 +1620,9 @@ if __name__ == '__main__':
             try:
                 doc.merge_translations(translations, opts.lang, strict=opts.strict)
             except Exception as e:
-                sys.stderr.write('Error: Could not merge translations:\n%s\n' % str(e))
+                sys.stderr.write('Error: Could not merge translations:\n%s\n' % ustr(e))
                 sys.exit(1)
             fout = out
-            if isinstance(fout, basestring):
-                fout = file(os.path.join(fout, os.path.basename(filename)), 'w')
+            if isinstance(fout, string_types):
+                fout = open(os.path.join(fout, os.path.basename(filename)), 'w')
             fout.write(doc._doc.serialize('utf-8'))
diff --git a/missing b/missing
index 28055d2ae6f2a2c584afcd769d7881e11f62ecd9..f62bbae306c7e1bc28896aab8fe7bfb700a9a33e 100755 (executable)
--- a/missing
+++ b/missing
@@ -1,11 +1,10 @@
 #! /bin/sh
-# Common stub for a few missing GNU programs while installing.
+# Common wrapper for a few potentially missing GNU programs.
 
-scriptversion=2009-04-28.21; # UTC
+scriptversion=2013-10-28.13; # UTC
 
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-# 2008, 2009 Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
+# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -26,69 +25,40 @@ scriptversion=2009-04-28.21; # UTC
 # the same distribution terms that you use for the rest of that program.
 
 if test $# -eq 0; then
-  echo 1>&2 "Try \`$0 --help' for more information"
+  echo 1>&2 "Try '$0 --help' for more information"
   exit 1
 fi
 
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, `missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
-  configure_ac=configure.ac
-else
-  configure_ac=configure.in
-fi
+case $1 in
 
-msg="missing on your system"
+  --is-lightweight)
+    # Used by our autoconf macros to check whether the available missing
+    # script is modern enough.
+    exit 0
+    ;;
 
-case $1 in
---run)
-  # Try to run requested program, and just exit if it succeeds.
-  run=
-  shift
-  "$@" && exit 0
-  # Exit code 63 means version mismatch.  This often happens
-  # when the user try to use an ancient version of a tool on
-  # a file that requires a minimum version.  In this case we
-  # we should proceed has if the program had been absent, or
-  # if --run hadn't been passed.
-  if test $? = 63; then
-    run=:
-    msg="probably too old"
-  fi
-  ;;
+  --run)
+    # Back-compat with the calling convention used by older automake.
+    shift
+    ;;
 
   -h|--h|--he|--hel|--help)
     echo "\
 $0 [OPTION]... PROGRAM [ARGUMENT]...
 
-Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
+Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
+to PROGRAM being missing or too old.
 
 Options:
   -h, --help      display this help and exit
   -v, --version   output version information and exit
-  --run           try to run the given command, and emulate it if it fails
 
 Supported PROGRAM values:
-  aclocal      touch file \`aclocal.m4'
-  autoconf     touch file \`configure'
-  autoheader   touch file \`config.h.in'
-  autom4te     touch the output file, or create a stub one
-  automake     touch all \`Makefile.in' files
-  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
-  flex         create \`lex.yy.c', if possible, from existing .c
-  help2man     touch the output file
-  lex          create \`lex.yy.c', if possible, from existing .c
-  makeinfo     touch the output file
-  tar          try tar, gnutar, gtar, then tar without non-portable flags
-  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
+  aclocal   autoconf  autoheader   autom4te  automake  makeinfo
+  bison     yacc      flex         lex       help2man
 
-Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
-\`g' are ignored when checking the name.
+Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
+'g' are ignored when checking the name.
 
 Send bug reports to <bug-automake@gnu.org>."
     exit $?
@@ -100,272 +70,141 @@ Send bug reports to <bug-automake@gnu.org>."
     ;;
 
   -*)
-    echo 1>&2 "$0: Unknown \`$1' option"
-    echo 1>&2 "Try \`$0 --help' for more information"
+    echo 1>&2 "$0: unknown '$1' option"
+    echo 1>&2 "Try '$0 --help' for more information"
     exit 1
     ;;
 
 esac
 
-# normalize program name to check for.
-program=`echo "$1" | sed '
-  s/^gnu-//; t
-  s/^gnu//; t
-  s/^g//; t'`
-
-# Now exit if we have it, but it failed.  Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program).  This is about non-GNU programs, so use $1 not
-# $program.
-case $1 in
-  lex*|yacc*)
-    # Not GNU programs, they don't have --version.
-    ;;
-
-  tar*)
-    if test -n "$run"; then
-       echo 1>&2 "ERROR: \`tar' requires --run"
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       exit 1
-    fi
-    ;;
-
-  *)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       # Could not run --version or --help.  This is probably someone
-       # running `$TOOL --version' or `$TOOL --help' to check whether
-       # $TOOL exists and not knowing $TOOL uses missing.
-       exit 1
-    fi
-    ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $program in
-  aclocal*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
-         to install the \`Automake' and \`Perl' packages.  Grab them from
-         any GNU archive site."
-    touch aclocal.m4
-    ;;
-
-  autoconf*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`${configure_ac}'.  You might want to install the
-         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
-         archive site."
-    touch configure
-    ;;
-
-  autoheader*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
-         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
-         from any GNU archive site."
-    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
-    test -z "$files" && files="config.h"
-    touch_files=
-    for f in $files; do
-      case $f in
-      *:*) touch_files="$touch_files "`echo "$f" |
-                                      sed -e 's/^[^:]*://' -e 's/:.*//'`;;
-      *) touch_files="$touch_files $f.in";;
-      esac
-    done
-    touch $touch_files
-    ;;
-
-  automake*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
-         You might want to install the \`Automake' and \`Perl' packages.
-         Grab them from any GNU archive site."
-    find . -type f -name Makefile.am -print |
-          sed 's/\.am$/.in/' |
-          while read f; do touch "$f"; done
-    ;;
-
-  autom4te*)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, but is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.
-         You can get \`$1' as part of \`Autoconf' from any GNU
-         archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-       touch $file
-    else
-       test -z "$file" || exec >$file
-       echo "#! /bin/sh"
-       echo "# Created by GNU Automake missing as a replacement of"
-       echo "#  $ $@"
-       echo "exit 0"
-       chmod +x $file
-       exit 1
-    fi
-    ;;
-
-  bison*|yacc*)
-    echo 1>&2 "\
-WARNING: \`$1' $msg.  You should only need it if
-         you modified a \`.y' file.  You may need the \`Bison' package
-         in order for those modifications to take effect.  You can get
-         \`Bison' from any GNU archive site."
-    rm -f y.tab.c y.tab.h
-    if test $# -ne 1; then
-        eval LASTARG="\${$#}"
-       case $LASTARG in
-       *.y)
-           SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" y.tab.c
-           fi
-           SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" y.tab.h
-           fi
-         ;;
-       esac
-    fi
-    if test ! -f y.tab.h; then
-       echo >y.tab.h
-    fi
-    if test ! -f y.tab.c; then
-       echo 'main() { return 0; }' >y.tab.c
-    fi
-    ;;
-
-  lex*|flex*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.l' file.  You may need the \`Flex' package
-         in order for those modifications to take effect.  You can get
-         \`Flex' from any GNU archive site."
-    rm -f lex.yy.c
-    if test $# -ne 1; then
-        eval LASTARG="\${$#}"
-       case $LASTARG in
-       *.l)
-           SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" lex.yy.c
-           fi
-         ;;
-       esac
-    fi
-    if test ! -f lex.yy.c; then
-       echo 'main() { return 0; }' >lex.yy.c
-    fi
-    ;;
-
-  help2man*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-        you modified a dependency of a manual page.  You may need the
-        \`Help2man' package in order for those modifications to take
-        effect.  You can get \`Help2man' from any GNU archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-       touch $file
-    else
-       test -z "$file" || exec >$file
-       echo ".ab help2man is required to generate this page"
-       exit $?
-    fi
-    ;;
-
-  makeinfo*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.texi' or \`.texinfo' file, or any other file
-         indirectly affecting the aspect of the manual.  The spurious
-         call might also be the consequence of using a buggy \`make' (AIX,
-         DU, IRIX).  You might want to install the \`Texinfo' package or
-         the \`GNU make' package.  Grab either from any GNU archive site."
-    # The file to touch is that specified with -o ...
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -z "$file"; then
-      # ... or it is the one specified with @setfilename ...
-      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-      file=`sed -n '
-       /^@setfilename/{
-         s/.* \([^ ]*\) *$/\1/
-         p
-         q
-       }' $infile`
-      # ... or it is derived from the source name (dir/f.texi becomes f.info)
-      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
-    fi
-    # If the file does not exist, the user really needs makeinfo;
-    # let's fail without touching anything.
-    test -f $file || exit 1
-    touch $file
-    ;;
-
-  tar*)
-    shift
-
-    # We have already tried tar in the generic part.
-    # Look for gnutar/gtar before invocation to avoid ugly error
-    # messages.
-    if (gnutar --version > /dev/null 2>&1); then
-       gnutar "$@" && exit 0
-    fi
-    if (gtar --version > /dev/null 2>&1); then
-       gtar "$@" && exit 0
-    fi
-    firstarg="$1"
-    if shift; then
-       case $firstarg in
-       *o*)
-           firstarg=`echo "$firstarg" | sed s/o//`
-           tar "$firstarg" "$@" && exit 0
-           ;;
-       esac
-       case $firstarg in
-       *h*)
-           firstarg=`echo "$firstarg" | sed s/h//`
-           tar "$firstarg" "$@" && exit 0
-           ;;
-       esac
-    fi
-
-    echo 1>&2 "\
-WARNING: I can't seem to be able to run \`tar' with the given arguments.
-         You may want to install GNU tar or Free paxutils, or check the
-         command line arguments."
-    exit 1
-    ;;
-
-  *)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, and is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.  Check the \`README' file,
-         it often tells you about the needed prerequisites for installing
-         this package.  You may also peek at any GNU archive site, in case
-         some other package would contain this missing \`$1' program."
-    exit 1
-    ;;
-esac
+# Run the given program, remember its exit status.
+"$@"; st=$?
+
+# If it succeeded, we are done.
+test $st -eq 0 && exit 0
+
+# Also exit now if we it failed (or wasn't found), and '--version' was
+# passed; such an option is passed most likely to detect whether the
+# program is present and works.
+case $2 in --version|--help) exit $st;; esac
+
+# Exit code 63 means version mismatch.  This often happens when the user
+# tries to use an ancient version of a tool on a file that requires a
+# minimum version.
+if test $st -eq 63; then
+  msg="probably too old"
+elif test $st -eq 127; then
+  # Program was missing.
+  msg="missing on your system"
+else
+  # Program was found and executed, but failed.  Give up.
+  exit $st
+fi
 
-exit 0
+perl_URL=http://www.perl.org/
+flex_URL=http://flex.sourceforge.net/
+gnu_software_URL=http://www.gnu.org/software
+
+program_details ()
+{
+  case $1 in
+    aclocal|automake)
+      echo "The '$1' program is part of the GNU Automake package:"
+      echo "<$gnu_software_URL/automake>"
+      echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
+      echo "<$gnu_software_URL/autoconf>"
+      echo "<$gnu_software_URL/m4/>"
+      echo "<$perl_URL>"
+      ;;
+    autoconf|autom4te|autoheader)
+      echo "The '$1' program is part of the GNU Autoconf package:"
+      echo "<$gnu_software_URL/autoconf/>"
+      echo "It also requires GNU m4 and Perl in order to run:"
+      echo "<$gnu_software_URL/m4/>"
+      echo "<$perl_URL>"
+      ;;
+  esac
+}
+
+give_advice ()
+{
+  # Normalize program name to check for.
+  normalized_program=`echo "$1" | sed '
+    s/^gnu-//; t
+    s/^gnu//; t
+    s/^g//; t'`
+
+  printf '%s\n' "'$1' is $msg."
+
+  configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
+  case $normalized_program in
+    autoconf*)
+      echo "You should only need it if you modified 'configure.ac',"
+      echo "or m4 files included by it."
+      program_details 'autoconf'
+      ;;
+    autoheader*)
+      echo "You should only need it if you modified 'acconfig.h' or"
+      echo "$configure_deps."
+      program_details 'autoheader'
+      ;;
+    automake*)
+      echo "You should only need it if you modified 'Makefile.am' or"
+      echo "$configure_deps."
+      program_details 'automake'
+      ;;
+    aclocal*)
+      echo "You should only need it if you modified 'acinclude.m4' or"
+      echo "$configure_deps."
+      program_details 'aclocal'
+      ;;
+   autom4te*)
+      echo "You might have modified some maintainer files that require"
+      echo "the 'autom4te' program to be rebuilt."
+      program_details 'autom4te'
+      ;;
+    bison*|yacc*)
+      echo "You should only need it if you modified a '.y' file."
+      echo "You may want to install the GNU Bison package:"
+      echo "<$gnu_software_URL/bison/>"
+      ;;
+    lex*|flex*)
+      echo "You should only need it if you modified a '.l' file."
+      echo "You may want to install the Fast Lexical Analyzer package:"
+      echo "<$flex_URL>"
+      ;;
+    help2man*)
+      echo "You should only need it if you modified a dependency" \
+           "of a man page."
+      echo "You may want to install the GNU Help2man package:"
+      echo "<$gnu_software_URL/help2man/>"
+    ;;
+    makeinfo*)
+      echo "You should only need it if you modified a '.texi' file, or"
+      echo "any other file indirectly affecting the aspect of the manual."
+      echo "You might want to install the Texinfo package:"
+      echo "<$gnu_software_URL/texinfo/>"
+      echo "The spurious makeinfo call might also be the consequence of"
+      echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
+      echo "want to install GNU make:"
+      echo "<$gnu_software_URL/make/>"
+      ;;
+    *)
+      echo "You might have modified some files without having the proper"
+      echo "tools for further handling them.  Check the 'README' file, it"
+      echo "often tells you about the needed prerequisites for installing"
+      echo "this package.  You may also peek at any GNU archive site, in"
+      echo "case some other package contains this missing '$1' program."
+      ;;
+  esac
+}
+
+give_advice "$1" | sed -e '1s/^/WARNING: /' \
+                       -e '2,$s/^/         /' >&2
+
+# Propagate the correct exit status (expected to be 127 for a program
+# not found, 63 for a program that failed due to version mismatch).
+exit $st
 
 # Local variables:
 # eval: (add-hook 'write-file-hooks 'time-stamp)
diff --git a/setup.py b/setup.py
new file mode 100644 (file)
index 0000000..e8b6102
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,25 @@
+#!/usr/bin/env python
+
+# setup.py.in is converted to setup.py by the configure script. This is not
+# intended as the recommended way to build and install itstool. See the INSTALL
+# file for details on installing with make. This file is here to make it easier
+# to upload itstool to pypi.
+
+from distutils.core import setup
+
+setup(name='itstool',
+      version='2.0.3',
+      description='XML to PO and back again using W3C ITS rules',
+      author='Shaun McCance',
+      author_email='shaunm@gnome.org',
+      url='http://itstool.org/',
+      scripts=['itstool'],
+      data_files=[('/usr/local/share/itstool/its', [
+          'its/docbook.its',
+          'its/docbook5.its',
+          'its/its.its',
+          'its/mallard.its',
+          'its/ttml.its',
+          'its/xhtml.its',
+      ])]
+)
diff --git a/setup.py.in b/setup.py.in
new file mode 100644 (file)
index 0000000..0b3d866
--- /dev/null
@@ -0,0 +1,25 @@
+#!/usr/bin/env python
+
+# setup.py.in is converted to setup.py by the configure script. This is not
+# intended as the recommended way to build and install itstool. See the INSTALL
+# file for details on installing with make. This file is here to make it easier
+# to upload itstool to pypi.
+
+from distutils.core import setup
+
+setup(name='itstool',
+      version='@VERSION@',
+      description='XML to PO and back again using W3C ITS rules',
+      author='Shaun McCance',
+      author_email='shaunm@gnome.org',
+      url='http://itstool.org/',
+      scripts=['itstool'],
+      data_files=[('@DATADIR@/itstool/its', [
+          'its/docbook.its',
+          'its/docbook5.its',
+          'its/its.its',
+          'its/mallard.its',
+          'its/ttml.its',
+          'its/xhtml.its',
+      ])]
+)