diff options
Diffstat (limited to 'community/mpc/0001-doc-make-upload-target-dependency-on-rsync-optional.patch')
-rw-r--r-- | community/mpc/0001-doc-make-upload-target-dependency-on-rsync-optional.patch | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/community/mpc/0001-doc-make-upload-target-dependency-on-rsync-optional.patch b/community/mpc/0001-doc-make-upload-target-dependency-on-rsync-optional.patch new file mode 100644 index 00000000000..a3b05e1a17e --- /dev/null +++ b/community/mpc/0001-doc-make-upload-target-dependency-on-rsync-optional.patch @@ -0,0 +1,58 @@ +From b656ca4b6c2a0d5b6cebd7f7daa679352f664e0e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?S=C3=B6ren=20Tempel?= <soeren+git@soeren-tempel.net> +Date: Tue, 30 Nov 2021 02:53:23 +0100 +Subject: [PATCH] doc: make upload target dependency on rsync optional + +Currently, rsync is an unconditional dependency and checked during +`meson configure`. As such, the build will fail if rsync is not +installed which is probably not what was intended here. + +From the meson documentation: + + Meson will automatically insert the appropriate dependencies on + targets and files listed in this keyword [the command] argument. + +This commit fixes the unconditional dependency on rsync with an explicit +find_program invocation with `required: false`. Also wrap the +custom_target in an if statement since it is not allowed to use +non-found external programs in `command`. +--- + doc/meson.build | 25 ++++++++++++++----------- + 1 file changed, 14 insertions(+), 11 deletions(-) + +diff --git a/doc/meson.build b/doc/meson.build +index f9475da..62529f8 100644 +--- a/doc/meson.build ++++ b/doc/meson.build +@@ -8,17 +8,20 @@ sphinx_output = custom_target( + install_dir: join_paths(get_option('datadir'), 'doc', meson.project_name()), + ) + +-custom_target( +- 'upload', +- input: sphinx_output, +- output: 'upload', +- build_always_stale: true, +- command: [ +- 'rsync', '-vpruz', '--delete', '@INPUT@', +- 'www.musicpd.org:/var/www/mpd/doc/mpc/', +- '--chmod=a+rX', +- ], +-) ++rsync = find_program('rsync', required: false) ++if rsync.found() ++ custom_target( ++ 'upload', ++ input: sphinx_output, ++ output: 'upload', ++ build_always_stale: true, ++ command: [ ++ rsync, '-vpruz', '--delete', '@INPUT@', ++ 'www.musicpd.org:/var/www/mpd/doc/mpc/', ++ '--chmod=a+rX', ++ ], ++ ) ++endif + + custom_target( + 'Manpage documentation', |