summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2017-05-01 00:17:20 -0400
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2017-05-01 00:19:39 -0400
commit488477d1011559078dbebfea18e22dcc1c9ca7ea (patch)
treea7ebb6227fdcbc7ef6f6e35bc74347c14f08222f
parent3e67e5c9928f8b1e1c5a63def88d53ed1fed12eb (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.build16
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))