Fix case where intltool-merge is missing that causes an exception when trying to install with setup.py
This commit is contained in:
parent
cb99bf5511
commit
eedac08179
15
setup.py
15
setup.py
|
@ -55,7 +55,7 @@ class BuildData(build):
|
||||||
if rc != 0:
|
if rc != 0:
|
||||||
raise Warning, "msgfmt returned %d" % rc
|
raise Warning, "msgfmt returned %d" % rc
|
||||||
except Exception, e:
|
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))
|
error("Error: %s" % str(e))
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
|
@ -63,14 +63,23 @@ class BuildData(build):
|
||||||
INTLTOOL_MERGE='intltool-merge'
|
INTLTOOL_MERGE='intltool-merge'
|
||||||
desktop_in='data/terminator.desktop.in'
|
desktop_in='data/terminator.desktop.in'
|
||||||
desktop_data='data/terminator.desktop'
|
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 " +
|
"/po/.intltool-merge-cache " + TOP_BUILDDIR + "/po " +
|
||||||
desktop_in + " " + desktop_data)
|
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_in='data/terminator.appdata.xml.in'
|
||||||
appdata_data='data/terminator.appdata.xml'
|
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 " +
|
"/po/.intltool-merge-cache " + TOP_BUILDDIR + "/po " +
|
||||||
appdata_in + " " + appdata_data)
|
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('</_','</')) for line in file_in]
|
||||||
|
|
||||||
class Uninstall(Command):
|
class Uninstall(Command):
|
||||||
description = "Attempt an uninstall from an install --record file"
|
description = "Attempt an uninstall from an install --record file"
|
||||||
|
|
Loading…
Reference in New Issue