* stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
* config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
* scripts/convert-ly.py (\markup): Fix too simplistic regexps.
Add \line for some simplistic cases.
+2005-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
+
+ Fix ./VERSION dependency, and without need to reconfigure.
+
+ * lily/main.cc (setup_paths): Update.
+
+ * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
+
+ * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
+
+ * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
+ Add \line for some simplistic cases.
+
+ * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
+
2005-04-10 Nicolas Sceaux <nicolas.sceaux@free.fr>
* elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
vim
#
-include VERSION
-package=`echo $PACKAGE_NAME | tr '[A-Z]' '[a-z]'`
+#include VERSION
+#package=`echo $PACKAGE_NAME | tr '[A-Z]' '[a-z]'`
SCRIPTS = configure aclocal.m4 autogen.sh lexer-gcc-3.1.sh Doxyfile
README_FILES = ChangeLog COPYING DEDICATION ROADMAP THANKS HACKING
builddir-setup-clean:
cd $(builddir) && rm -rf share
-$(config_h): config.hh.in
+$(config_h): config.hh.in
#
# this is to prevent people from getting
# undefined symbols when we add them to config.h.in,
/* datadir */
#define DATADIR "@DATADIR@"
-#define TOPLEVEL_VERSION "@TOPLEVEL_VERSION@"
-
-/* LilyPond init and input base directory */
-
-#define PACKAGE_DATADIR DATADIR "/" PACKAGE "/" TOPLEVEL_VERSION
-#define LILYPOND_DATADIR PACKAGE_DATADIR
+#define PACKAGE_DATADIR DATADIR "/" PACKAGE
/* default lilypond locale dir */
#define LOCALEDIR "@LOCALEDIR@"
# forced instead of $(datadir)/vim
# move out of config.make.in?
+
+# FIXME: naming scheme has been broken
+# package_ is supposed to be '.../lilypond', while
+# local_ means: .../lilypond-x.y.z or .../lilypond/x.y.z
+
package_suffix = $(package)/$(TOPLEVEL_VERSION)
package_datadir = $(datadir)/$(package_suffix)
package_infodir = $(infodir)/$(package_suffix)
package_libdir = $(libdir)/$(package_suffix)
+
+# FIXME: docdir using /version/?
package_docdir = $(docdir)/$(package_suffix)
package_omfdir = $(omfdir)/$(package_suffix)
-
-local_package_datadir = $(lilypond_datadir)
+local_package_datadir = $(package_datadir)/$(TOPLEVEL_VERSION)
local_package_libdir = $(lilypond_libdir)
local_package_docdir = $(lilypond_docdir)
local_package_omfdir = $(lilypond_omfdir)
-vimdir = $(local_package_datadir)/vim
-
-lilypond_datadir = $(package_datadir)
lilypond_libdir = $(package_libdir)
lilypond_docdir = $(package_docdir)
lilypond_omfdir = $(package_omfdir)
-local_lilypond_datadir = $(local_package_datadir)
-local_lilypond_libdir = $(local_package_libdir)
+lilypond_datadir = $(package_datadir)/$(TOPLEVEL_VERSION)
+vimdir = $(lilypond_datadir)/vim
BASH = @BASH@
BISON = @BISON@
{0, 0, 0, 0}
};
+#define LILYPOND_DATADIR PACKAGE_DATADIR "/" TOPLEVEL_VERSION
+
static void
dir_info (FILE *out)
{
'ly:import-module -> ly:module-copy'))
def conv (str):
- str = re.sub (r'\\(column|fill-line|dir-column|center-align|right-align|left-align|bracketed-y-column)\s*<([^<]*)>',
+ str = re.sub (r'\\(column|fill-line|dir-column|center-align|right-align|left-align|bracketed-y-column)\s*<(([^>]|<[^>]*>)*)>',
r'\\\1 {\2}', str)
- str = re.sub (r'\\(column|fill-line|dir-column|center-align|right-align|left-align|bracketed-y-column)\s*<([^<]*)>',
+ str = re.sub (r'\\(column|fill-line|dir-column|center-align|right-align|left-align|bracketed-y-column)\s*<(([^>]|<[^>]*>)*)>',
r'\\\1 {\2}', str)
- str = re.sub (r'\\(column|fill-line|dir-column|center-align|right-align|left-align|bracketed-y-column)\s*<([^<]*)>',
+ str = re.sub (r'\\(column|fill-line|dir-column|center-align|right-align|left-align|bracketed-y-column)\s*<(([^>]|<[^>]*>)*)>',
r'\\\1 {\2}', str)
+ def get_markup (m):
+ s = m.group (0)
+ s = re.sub (r'''((\\"|})\s*){''', '\2 \\line {', s)
+ return s
+ str = re.sub (r'\\markup\s*{([^}]|{[^}]*})*}', get_markup, str)
return str
conversions.append (((2, 5, 2),
import re
import sys
-
-vf = 'VERSION'
-if sys.argv[1:]:
- vf = sys.argv[1]
-
-f = open (vf)
-ls = f.readlines ()
-mypatch = 0
+PROGRAM = sys.argv[0]
+VERSION = sys.argv[1]
defs = []
-for l in ls:
- l = re.sub ('#.*','', l)
- m = re.search ('([^ =]*)[\t ]*=[ \t]*([^ \t]*)[ \t]*\n', l)
+for i in open (VERSION).readlines ():
+ i = re.sub ('#.*','', i)
+ m = re.search ('([^ =]*)[\t ]*=[ \t]*([^ \t]*)[ \t]*\n', i)
if m:
- defs.append ((m.group(1), m.group(2)))
-
+ defs.append ((m.group (1), m.group (2)))
sys.stdout.write (r'''
+/*
+ Automatically generated from %(VERSION)s
+ by %(PROGRAM)s.
+*/
#ifndef VERSION_HH
#define VERSION_HH
-/* automatically generated */
-
-
-''')
-for d in defs:
+''' % vars ())
+for name, expansion in defs:
# GUILE leaks autoconf data into userspace.
- sys.stdout.write ('#ifdef %s\n' % d[0])
- sys.stdout.write ('#undef %s\n' % d[0])
- sys.stdout.write ('#endif /* %s */\n' % d[0])
-
- sys.stdout.write ('#define %s "%s"\n' % d)
+ sys.stdout.write (r'''
+#ifdef %(name)s
+#undef %(name)s
+#endif /* %(name)s */
+#define %(name)s "%(expansion)s"
+''' % vars ())
-
if ('MY_PATCH_LEVEL', '') in defs:
- sys.stdout.write ('#define NO_MY_PATCHLEVEL')
+ sys.stdout.write (r'''
+#define NO_MY_PATCHLEVEL
+#define TOPLEVEL_VERSION MAJOR_VERSION "." MINOR_VERSION "." PATCH_LEVEL
+''')
+else:
+ sys.stdout.write (r'''
+#define TOPLEVEL_VERSION MAJOR_VERSION "." MINOR_VERSION "." PATCH_LEVEL "." MY_PATCH_LEVEL
+''')
sys.stdout.write(r'''
-#endif
+#endif /* VERSION_HH */
''')
$(ERROR_LOG) ; \
fi
-$(outdir)/version.hh: $(depth)/VERSION $(config_make)
+$(outdir)/version.hh: $(depth)/VERSION $(config_make) $(step-bindir)/make-version.py
$(PYTHON) $(step-bindir)/make-version.py $< > $@
$(outdir)/config.hh: $(config_h)