meson: don't require 'touch' binary, make use of 'cp' optional
authorAndres Freund <andres@anarazel.de>
Wed, 8 Mar 2023 02:24:18 +0000 (18:24 -0800)
committerAndres Freund <andres@anarazel.de>
Wed, 8 Mar 2023 02:44:42 +0000 (18:44 -0800)
We already didn't use touch (some earlier version of the meson build did ),
and cp is only used for updating unicode files. The latter already depends on
the optional availability of 'wget', so doing the same for 'cp' makes sense.

Eventually we probably want a portable command for updating source code as
part of a target, but for now...

Reported-by: Andrew Dunstan <andrew@dunslane.net>
Discussion: https://postgr.es/m/70e96c34-64ee-e549-8c4a-f91a7a668804@dunslane.net

meson.build
src/common/unicode/meson.build

index 87cb974ad7c330586da33e70ed7ddd80cf0ce354..f1ce4cb8e03ce591340bb46070fb69dc76bf3806 100644 (file)
@@ -333,11 +333,11 @@ prove = find_program(get_option('PROVE'), native: true, required: false)
 tar = find_program(get_option('TAR'), native: true)
 gzip = find_program(get_option('GZIP'), native: true)
 program_lz4 = find_program(get_option('LZ4'), native: true, required: false)
-touch = find_program('touch', native: true)
 openssl = find_program(get_option('OPENSSL'), native: true, required: false)
 program_zstd = find_program(get_option('ZSTD'), native: true, required: false)
 dtrace = find_program(get_option('DTRACE'), native: true, required: get_option('dtrace'))
 missing = find_program('config/missing', native: true)
+cp = find_program('cp', required: false, native: true)
 
 bison_flags = []
 if bison.found()
index 63c81664de33739f1cbf802a752e08670a725d4d..1ffece1550a66cf171ade12edff932e9cefb2504 100644 (file)
@@ -5,7 +5,7 @@ UNICODE_VERSION = '15.0.0'
 unicode_data = {}
 unicode_baseurl = 'https://www.unicode.org/Public/@0@/ucd/@1@'
 
-if not wget.found()
+if not wget.found() or not cp.found()
   subdir_done()
 endif
 
@@ -100,7 +100,7 @@ update_unicode = custom_target('update-unicode',
   depends: update_unicode_dep,
   output: ['dont-exist'],
   input: update_unicode_targets,
-  command: ['cp', '@INPUT@', '@SOURCE_ROOT@/src/include/common/'],
+  command: [cp, '@INPUT@', '@SOURCE_ROOT@/src/include/common/'],
   build_by_default: false,
   build_always_stale: true,
 )