diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2017-05-01 00:17:20 -0400 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2017-05-01 00:19:39 -0400 |
commit | 488477d1011559078dbebfea18e22dcc1c9ca7ea (patch) | |
tree | a7ebb6227fdcbc7ef6f6e35bc74347c14f08222f | |
parent | 3e67e5c9928f8b1e1c5a63def88d53ed1fed12eb (diff) |
meson: fix creation of html symlinks
This adds two somewhat independent rules:
1. to create symlinks to html pages in the build directory
2. to create symlinks in the installation directory
The second part needs to be coded separately, because telling meson to install
the symlinks created in step 1. results in a copy of the target, instead of a
symlink. So step 2. needs to ignore the result of 1. and create the symlink again.
Fixes #5863.
-rw-r--r-- | man/meson.build | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/man/meson.build b/man/meson.build index 9cdb560c4c..abe6878022 100644 --- a/man/meson.build +++ b/man/meson.build @@ -64,13 +64,27 @@ foreach tuple : manpages p2 = custom_target( html, input : xml, - output : [html] + htmlaliases, + output : html, command : xslt_cmd + [custom_html_xsl, '@INPUT@'], depend_files : custom_entities_ent, install : want_html, install_dir : join_paths(docdir, 'html')) html_pages += [p2] + foreach htmlalias : htmlaliases + p3 = custom_target( + htmlalias, + input : p2, + output : htmlalias, + command : ['ln', '-fs', html, '@OUTPUT@']) + if want_html + dst = join_paths(docdir, 'html', htmlalias) + cmd = 'ln -fs @0@ $DESTDIR@1@'.format(html, dst) + meson.add_install_script('sh', '-c', cmd) + endif + html_pages += [p3] + endforeach + source_xml_files += files(tuple[0] + '.xml') else message('Skipping @0@.@1@ because @2@ is false'.format(stem, section, condition)) |