diff --git a/setup.py b/setup.py index c527d3fb..67ab7abd 100755 --- a/setup.py +++ b/setup.py @@ -55,7 +55,7 @@ class BuildData(build): if rc != 0: raise Warning, "msgfmt returned %d" % rc except Exception, e: - error("Building gettext files failed. Try setup.py --without-gettext [build|install]") + error("Building gettext files failed. Ensure you have gettext installed. Alternatively, try setup.py --without-gettext [build|install]") error("Error: %s" % str(e)) sys.exit(1) @@ -63,14 +63,23 @@ class BuildData(build): INTLTOOL_MERGE='intltool-merge' desktop_in='data/terminator.desktop.in' desktop_data='data/terminator.desktop' - os.system ("C_ALL=C " + INTLTOOL_MERGE + " -d -u -c " + TOP_BUILDDIR + + rc = os.system ("C_ALL=C " + INTLTOOL_MERGE + " -d -u -c " + TOP_BUILDDIR + "/po/.intltool-merge-cache " + TOP_BUILDDIR + "/po " + desktop_in + " " + desktop_data) + if rc != 0: + # run the desktop_in through a command to strip the "_" characters + with open(desktop_in) as file_in, open(desktop_data, 'w') as file_data: + [file_data.write(line.lstrip('_')) for line in file_in] + appdata_in='data/terminator.appdata.xml.in' appdata_data='data/terminator.appdata.xml' - os.system ("C_ALL=C " + INTLTOOL_MERGE + " -x -u -c " + TOP_BUILDDIR + + rc = os.system ("C_ALL=C " + INTLTOOL_MERGE + " -x -u -c " + TOP_BUILDDIR + "/po/.intltool-merge-cache " + TOP_BUILDDIR + "/po " + appdata_in + " " + appdata_data) + if rc != 0: + # run the appdata_in through a command to strip the "_" characters + with open(appdata_in) as file_in, open(appdata_data, 'w') as file_data: + [file_data.write(line.replace('<_','<').replace('