- added the following step to make_release: fix EOL in distribution source, generate source tarball.
- devtools/ was made into a python module and common utilities are being moved in this module
diff --git a/doxybuild.py b/doxybuild.py
index 82bdea6..792bff7 100644
--- a/doxybuild.py
+++ b/doxybuild.py
@@ -6,47 +6,7 @@
import os.path
import sys
import shutil
-import gzip
-import tarfile
-
-TARGZ_DEFAULT_COMPRESSION_LEVEL = 9
-
-def make_tarball(tarball_path, sources, base_dir, prefix_dir=''):
- """Parameters:
- tarball_path: output path of the .tar.gz file
- sources: list of sources to include in the tarball, relative to the current directory
- base_dir: if a source file is in a sub-directory of base_dir, then base_dir is stripped
- from path in the tarball.
- prefix_dir: all files stored in the tarball be sub-directory of prefix_dir. Set to ''
- to make them child of root.
- """
- base_dir = os.path.normpath( os.path.abspath( base_dir ) )
- def archive_name( path ):
- """Makes path relative to base_dir."""
- path = os.path.normpath( os.path.abspath( path ) )
- common_path = os.path.commonprefix( (base_dir, path) )
- archive_name = path[len(common_path):]
- if os.path.isabs( archive_name ):
- archive_name = archive_name[1:]
- return os.path.join( prefix_dir, archive_name )
- def visit(tar, dirname, names):
- for name in names:
- path = os.path.join(dirname, name)
- if os.path.isfile(path):
- path_in_tar = archive_name(path)
- tar.add(path, path_in_tar )
- compression = TARGZ_DEFAULT_COMPRESSION_LEVEL
- fileobj = gzip.GzipFile( tarball_path, 'wb', compression )
- tar = tarfile.TarFile(os.path.splitext(tarball_path)[0], 'w', fileobj)
- for source in sources:
- source_path = source
- if os.path.isdir( source ):
- os.path.walk(source_path, visit, tar)
- else:
- path_in_tar = archive_name(source_path)
- tar.add(source_path, path_in_tar ) # filename, arcname
- tar.close()
-
+from devtools import tarball
def find_program(filename):
"""find a program in folders path_lst, and sets env[var]
@@ -171,7 +131,7 @@
'version'
]
tarball_basedir = os.path.join( full_output_dir, html_output_dirname )
- make_tarball( tarball_path, tarball_sources, tarball_basedir, html_output_dirname )
+ tarball.make_tarball( tarball_path, tarball_sources, tarball_basedir, html_output_dirname )
def main():
usage = """%prog