From 052a0e0a02224db6ebacabbc1324dcf903b00c39 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sat, 27 Mar 2010 18:13:44 +1100 Subject: [PATCH] s4-waf: only build the pidl manpages if we have MakeMaker.pm --- pidl/wscript | 38 ++++++++++++++++++++++++++++++++++++++ pidl/wscript_build | 27 --------------------------- 2 files changed, 38 insertions(+), 27 deletions(-) create mode 100644 pidl/wscript delete mode 100644 pidl/wscript_build diff --git a/pidl/wscript b/pidl/wscript new file mode 100644 index 00000000000..64ff63041fe --- /dev/null +++ b/pidl/wscript @@ -0,0 +1,38 @@ +import os + +def set_options(opt): + opt.tool_options('perl') + +def configure(conf): + conf.check_tool('perl') + if conf.check_perl_module('ExtUtils::MakeMaker'): + conf.DEFINE('HAVE_PERL_MAKEMAKER', 1) + +def build(bld): + bld.INSTALL_FILES('${BINDIR}', 'pidl', chmod=0755) + + bld.BUILD_SUBDIR('lib') + + if not bld.CONFIG_SET('HAVE_PERL_MAKEMAKER'): + return + + pidl_src = ['pidl'] + pidl_src.extend(bld.path.ant_glob('lib/**/*.pm').split()) + + pidl_manpages = '''blib/man1/pidl.1p blib/man3/Parse::Pidl::NDR.3pm + blib/man3/Parse::Pidl::Wireshark::Conformance.3pm + blib/man3/Parse::Pidl::Dump.3pm + blib/man3/Parse::Pidl::Util.3pm + blib/man3/Parse::Pidl::Wireshark::NDR.3pm'''.split() + + # use perl to build the manpages + bld.env.pidl_srcdir = os.path.join(bld.srcnode.abspath(), 'pidl') + + bld.SAMBA_GENERATOR('pidl_manpages', + source=pidl_src, + target=pidl_manpages, + rule='cd ${pidl_srcdir} && ${PERL} Makefile.PL && make && rm -f Makefile Makefile.old') + + for m in pidl_manpages: + dname=os.path.dirname(m)[5:] + bld.INSTALL_FILES('${MANDIR}/'+dname, m, flat=True) diff --git a/pidl/wscript_build b/pidl/wscript_build deleted file mode 100644 index a03ef46cc0f..00000000000 --- a/pidl/wscript_build +++ /dev/null @@ -1,27 +0,0 @@ -import os - -bld.INSTALL_FILES('${BINDIR}', 'pidl', chmod=0755) - -bld.BUILD_SUBDIR('lib') - -pidl_src = ['pidl'] -pidl_src.extend(bld.path.ant_glob('lib/**/*.pm').split()) - -pidl_manpages = '''blib/man1/pidl.1p blib/man3/Parse::Pidl::NDR.3pm - blib/man3/Parse::Pidl::Wireshark::Conformance.3pm - blib/man3/Parse::Pidl::Dump.3pm - blib/man3/Parse::Pidl::Util.3pm - blib/man3/Parse::Pidl::Wireshark::NDR.3pm'''.split() - - -# use perl to build the manpages -bld.env.pidl_srcdir = os.path.join(bld.srcnode.abspath(), 'pidl') - -bld.SAMBA_GENERATOR('pidl_manpages', - source=pidl_src, - target=pidl_manpages, - rule='cd ${pidl_srcdir} && ${PERL} Makefile.PL && make && rm -f Makefile Makefile.old') - -for m in pidl_manpages: - dname=os.path.dirname(m)[5:] - bld.INSTALL_FILES('${MANDIR}/'+dname, m, flat=True)