summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2010-12-16 03:55:24 +0000
committerDavid Robillard <d@drobilla.net>2010-12-16 03:55:24 +0000
commitee0691ac8d09d66e822e0083e28e2d79998cee82 (patch)
tree88ad0214ef655b7472115fe2d0e2e03b4ca4768d
parent66b9d3263bd11f80363a5c3a1051223168b3fa4f (diff)
downloadautowaf-ee0691ac8d09d66e822e0083e28e2d79998cee82.tar.gz
autowaf-ee0691ac8d09d66e822e0083e28e2d79998cee82.tar.bz2
autowaf-ee0691ac8d09d66e822e0083e28e2d79998cee82.zip
More updates for waf 1.6 (include doxygen tool, fix install globs).
git-svn-id: http://svn.drobilla.net/autowaf@4 e2e4594f-ea7b-45dc-bc5a-5f5301e603aa
-rw-r--r--autowaf.py60
-rwxr-xr-xwafbin75881 -> 76940 bytes
2 files changed, 31 insertions, 29 deletions
diff --git a/autowaf.py b/autowaf.py
index bc1ec7e..91df3fb 100644
--- a/autowaf.py
+++ b/autowaf.py
@@ -130,6 +130,7 @@ def configure(conf):
conf.check_tool('misc')
conf.check_tool('compiler_cc')
conf.check_tool('compiler_cxx')
+ conf.load('doxygen')
conf.env['DOCS'] = Options.options.docs
conf.env['DEBUG'] = Options.options.debug
conf.env['STRICT'] = Options.options.strict
@@ -292,25 +293,24 @@ def build_pc(bld, name, version, libs):
version -- version string (e.g. '1.2.3')
libs -- string/list of dependencies (e.g. 'LIBFOO GLIB')
'''
-
- obj = bld.new_task_gen('subst')
- obj.source = name.lower() + '.pc.in'
- obj.target = name.lower() + '.pc'
- obj.install_path = '${PREFIX}/${LIBDIRNAME}/pkgconfig'
pkg_prefix = bld.env['PREFIX']
- obj.exec_prefix = '${prefix}'
if pkg_prefix[-1] == '/':
pkg_prefix = pkg_prefix[:-1]
- obj.PREFIX = pkg_prefix
- obj.EXEC_PREFIX = '${prefix}'
- obj.LIBDIR = '${prefix}/' + bld.env['LIBDIRNAME']
- obj.INCLUDEDIR = '${prefix}/include'
- setattr(obj, name + '_VERSION', version)
+
+ obj = bld(features = 'subst',
+ source = name.lower() + '.pc.in',
+ target = name.lower() + '.pc',
+ install_path = '${PREFIX}/${LIBDIRNAME}/pkgconfig',
+ exec_prefix = '${prefix}',
+ PREFIX = pkg_prefix,
+ EXEC_PREFIX = '${prefix}',
+ LIBDIR = '${prefix}/' + bld.env['LIBDIRNAME'],
+ INCLUDEDIR = '${prefix}/include')
+
if type(libs) != list:
libs = libs.split()
-
- subst_dict = {}
+ subst_dict = { name + '_VERSION' : version }
for i in libs:
subst_dict[i + '_LIBS'] = link_flags(bld.env, i)
lib_cflags = compile_flags(bld.env, i)
@@ -324,28 +324,30 @@ def build_pc(bld, name, version, libs):
def build_dox(bld, name, version, srcdir, blddir):
if not bld.env['DOCS']:
return
- obj = bld.new_task_gen('subst')
- obj.source = 'doc/reference.doxygen.in'
- obj.target = 'doc/reference.doxygen'
+
if is_child():
src_dir = os.path.join(srcdir, name.lower())
- doc_dir = os.path.join(blddir, 'default', name.lower(), 'doc')
+ doc_dir = os.path.join(blddir, name.lower(), 'doc')
else:
src_dir = srcdir
- doc_dir = os.path.join(blddir, 'default', 'doc')
- obj.dict = {
+ doc_dir = os.path.join(blddir, 'doc')
+
+ doxyfile = bld(features = 'subst',
+ source = 'doc/reference.doxygen.in',
+ target = 'doc/reference.doxygen',
+ install_path = '')
+
+ subst_dict = {
name + '_VERSION' : version,
name + '_SRCDIR' : os.path.abspath(src_dir),
name + '_DOC_DIR' : os.path.abspath(doc_dir)
}
- obj.install_path = ''
- out1 = bld.new_task_gen('command-output')
- out1.dependencies = [obj]
- out1.stdout = '/doc/doxygen.out'
- out1.stdin = '/doc/reference.doxygen' # whatever..
- out1.command = 'doxygen'
- out1.argv = [os.path.abspath(doc_dir) + '/reference.doxygen']
- out1.command_is_external = True
+
+ doxyfile.__dict__.update(subst_dict)
+
+ docs = bld(features = 'doxygen',
+ doxyfile = 'doc/reference.doxygen',
+ after = doxyfile)
# Version code file generation
def build_version_files(header_path, source_path, domain, major, minor, micro):
@@ -386,10 +388,10 @@ def run_tests(ctx, appname, tests):
top_level = os.path.abspath(ctx.curdir) != os.path.abspath(os.curdir)
if top_level:
- os.chdir('./build/default/' + appname)
+ os.chdir('./build/' + appname)
base = '../..'
else:
- os.chdir('./build/default')
+ os.chdir('./build')
lcov = True
lcov_log = open('lcov.log', 'w')
diff --git a/waf b/waf
index f7dc2c9..edddfcd 100755
--- a/waf
+++ b/waf
Binary files differ