for m in matches:
file, format = m
if format and file[-len(format):] != format:
- file = file + format
+ file = file + '.' + format
if not os.path.isabs(file):
a = []
f = file
- while 1:
+ while f:
f, tail = os.path.split(f)
if tail == 'doc':
break
return includes
s = Scanner(name = 'sgml', function = scansgml, skeys = ['.sgml', '.mod'])
-env = env.Copy(SCANNERS = [s])
+orig_env = env
+env = orig_env.Copy(SCANNERS = [s])
if jw:
#
# rebuild all the docs every time just because the date changes.
#
date, ver, rev = env.Dictionary('DATE', 'VERSION', 'REVISION')
- #version_sgml = File(os.path.join(build, "version.sgml"))
- version_sgml = File("version.sgml")
+ version_sgml = File(os.path.join(build, "version.sgml"))
+ #version_sgml = File("version.sgml")
verfile = str(version_sgml)
try:
os.unlink(verfile)
# We have to tell SCons to scan the top-level SGML files which
# get included by the document SGML files in the subdirectories.
#
- included_sgml = [
- 'scons.mod',
- 'copyright.sgml',
- ]
+ manifest = File('MANIFEST').rstr()
+ src_files = map(lambda x: x[:-1], open(manifest).readlines())
+ for s in src_files:
+ base, ext = os.path.splitext(s)
+ if ext in ['.fig', '.jpg']:
+ orig_env.Install(build, s)
+ else:
+ orig_env.SCons_revision(os.path.join(build, s), s)
#
# For each document, build the document itself in HTML, Postscript,
# and PDF formats.
#
for doc in docs.keys():
- main = os.path.join(doc, 'main.sgml')
+ manifest = File(os.path.join(doc, 'MANIFEST')).rstr()
+ src_files = map(lambda x: x[:-1],
+ open(manifest).readlines())
+ for s in src_files:
+ base, ext = os.path.splitext(s)
+ if ext in ['.fig', '.jpg']:
+ orig_env.Install(os.path.join(build, doc), os.path.join(doc, s))
+ else:
+ orig_env.SCons_revision(os.path.join(build, doc, s),
+ os.path.join(doc, s))
+
+ main = os.path.join(build, doc, 'main.sgml')
out = 'main.out'
# Hard-coding the scons-src path is a bit of a hack. This can
if fig2dev:
for g in docs[doc].get('graphics', []):
- fig = os.path.join(doc, '%s.fig' % g)
+ fig = os.path.join(build, doc, '%s.fig' % g)
jpg = os.path.join(htmldir, '%s.jpg' % g)
env.Command(jpg, fig,
"%s -L jpeg -q 100 $SOURCES $TARGET" % fig2dev)
if fig2dev:
for g in docs[doc].get('graphics', []):
- fig = os.path.join(doc, '%s.fig' % g)
+ fig = os.path.join(build, doc, '%s.fig' % g)
eps = os.path.join(build, 'PS', '%s.eps' % g)
env.Command(eps, fig, "%s -L eps $SOURCES $TARGET" % fig2dev)
env.Depends(ps, eps)
# for easy distribution to the web site.
#
if tar_deps:
- tar_list = map(lambda x: x[11:], tar_list)
+ tar_list = string.join(map(lambda x: x[11:], tar_list))
env.Command(doc_tar_gz, tar_deps,
"tar cf${TAR_HFLAG} - -C build/doc %s | gzip > $TARGET" % tar_list)
Local(doc_tar_gz)
-RELEASE 0.91 - Thu, 14 Aug 2003 13:00:44 -0500
+RELEASE X.XX - XXX, XX XXX XXXX XX:XX:XX XXXXX
- This is the second beta release of SCons. Please consult the
+ This is the third beta release of SCons. Please consult the
CHANGES.txt file for a list of specific changes since last release.
+ Please note the following important changes since release 0.91:
+
Please note the following important changes since release 0.90:
- The spelling of the 'validater' keyword argument to the
This makes the SConscript() function's handling of file names
consistent with the rest of SCons.
- Please note the following important changes since release 0.14:
-
- - SCons now tries to verify that Microsoft Visual Studio (including
- Visual C++) is actually installed before using it, by checking
- that the program directory exists. If SCons cannot find your copy
- of Visual Studio, it is probably because it installed itself in a
- default directory that we have not seen before. If this is the
- case, please let us know so that we can update future versions.
-
SCons is developed with an extensive regression test suite, and a
rigorous development methodology for continually improving that suite.
Because of this, SCons is of sufficient quality that you can use it