]> git.donarmstrong.com Git - lilypond.git/blobdiff - scripts/musicxml2ly.py
Fix some bugs in the dynamic engraver and PostScript backend
[lilypond.git] / scripts / musicxml2ly.py
index f3fd9a7a06131cb467fe4d95f274acdebb3f49af..5f25567c592909beb52fca77bedffcb433fd9cbc 100644 (file)
@@ -9,17 +9,28 @@ from gettext import gettext as _
 
 
 
-for d in ['@lilypond_datadir@',
-          '@lilypond_libdir@']:
-    sys.path.insert (0, os.path.join (d, 'python'))
 
-# dynamic relocation, for GUB binaries.
-bindir = os.path.abspath (os.path.split (sys.argv[0])[0])
-for p in ['share', 'lib']:
-    datadir = os.path.abspath (bindir + '/../%s/lilypond/current/python/' % p)
-    sys.path.insert (0, datadir)
+datadir = '@local_lilypond_datadir@'
+if not os.path.isdir (datadir):
+    datadir = '@lilypond_datadir@'
+if os.environ.has_key ('LILYPONDPREFIX'):
+    datadir = os.environ['LILYPONDPREFIX']
+    while datadir[-1] == os.sep:
+        datadir = datadir[:-1]
+
+if os.path.exists (os.path.join (datadir, 'share/lilypond/@TOPLEVEL_VERSION@/')):
+    datadir = os.path.join (datadir, 'share/lilypond/@TOPLEVEL_VERSION@/')
+elif os.path.exists (os.path.join (datadir, 'share/lilypond/current/')):
+    datadir = os.path.join (datadir, 'share/lilypond/current/')
 
+sys.path.insert (0, os.path.join (datadir, 'python'))
 
+# dynamic relocation, for GUB binaries.
+bindir = os.path.split (sys.argv[0])[0]
+
+for prefix_component in ['share', 'lib']:
+    datadir = os.path.abspath (bindir + '/../%s/lilypond/current/python/' % prefix_component)
+    sys.path.insert (0, datadir)
 
 
 import lilylib as ly