1*84e872a0SLloyd Piqueif not get_option('libraries') 2*84e872a0SLloyd Pique error('-Ddocumentation=true requires -Dlibraries=true') 3*84e872a0SLloyd Piqueendif 4*84e872a0SLloyd Pique 5*84e872a0SLloyd Piquedot = find_program('dot') 6*84e872a0SLloyd Piquedoxygen = find_program('doxygen') 7*84e872a0SLloyd Piquexsltproc = find_program('xsltproc') 8*84e872a0SLloyd Piquexmlto = find_program('xmlto') 9*84e872a0SLloyd Pique 10*84e872a0SLloyd Piquecmd = run_command(doxygen, '--version', check: true) 11*84e872a0SLloyd Piquemessage('doxygen: ' + cmd.stdout().strip()) 12*84e872a0SLloyd Piquevers = cmd.stdout().strip() 13*84e872a0SLloyd Piqueif vers.version_compare('< 1.6.0') 14*84e872a0SLloyd Pique error('Doxygen 1.6 or later is required for building documentation, found @0@.'.format(vers)) 15*84e872a0SLloyd Piqueendif 16*84e872a0SLloyd Pique 17*84e872a0SLloyd Piquecmd = run_command(dot, '-V', check: true) 18*84e872a0SLloyd Piquemessage('dot: ' + cmd.stderr().strip()) 19*84e872a0SLloyd Piquevers = cmd.stderr().split('version')[1].strip().split(' ')[0] 20*84e872a0SLloyd Piqueif vers.version_compare('< 2.26.0') 21*84e872a0SLloyd Pique error('Dot (Graphviz) 2.26 or later is required for building documentation, found @0@.'.format(vers)) 22*84e872a0SLloyd Piqueendif 23*84e872a0SLloyd Pique 24*84e872a0SLloyd Piquemanpage_xsl = 'http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl' 25*84e872a0SLloyd Piquecmd = run_command(xsltproc, '--nonet', manpage_xsl, check: false) 26*84e872a0SLloyd Piqueif cmd.returncode() != 0 27*84e872a0SLloyd Pique error('The style sheet for man pages providing "@0@" was not found.'.format(manpage_xsl)) 28*84e872a0SLloyd Piqueendif 29*84e872a0SLloyd Pique 30*84e872a0SLloyd Piquepublican_install_prefix = join_paths( 31*84e872a0SLloyd Pique get_option('prefix'), 32*84e872a0SLloyd Pique get_option('datadir'), 33*84e872a0SLloyd Pique 'doc', 34*84e872a0SLloyd Pique meson.project_name(), 35*84e872a0SLloyd Pique 'Wayland', 'en-US' 36*84e872a0SLloyd Pique) 37*84e872a0SLloyd Pique 38*84e872a0SLloyd Piquepublican_html_dir = 'html' 39*84e872a0SLloyd Pique 40*84e872a0SLloyd Piquesubdir('doxygen') 41*84e872a0SLloyd Piquesubdir('publican') 42