summaryrefslogtreecommitdiff
path: root/meson.build
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2020-08-31 08:36:38 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2020-09-01 08:56:56 +1000
commit4d0d509129e5f80c4a9efe4523fc4b0aea58622b (patch)
treec086f4afcbcc9ed5aaf7061b3744f305bca7c7b2 /meson.build
parent4b2a91431b40cd4745f6f562fdc9600afc1a507d (diff)
downloadxorg-lib-libxkbcommon-4d0d509129e5f80c4a9efe4523fc4b0aea58622b.tar.gz
meson.build: define PATH_MAX where it's missing
PATH_MAX is not POSIX and can be missing on some systems, notably Windows (which provides MAX_PATH instead tough) and Hurd. Let's define it to a sane value where missing, i.e. the one it's defined to in limits.h. Except on Windows where we're limited to 260. Fixes https://github.com/xkbcommon/libxkbcommon/issues/180 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'meson.build')
-rw-r--r--meson.build8
1 files changed, 8 insertions, 0 deletions
diff --git a/meson.build b/meson.build
index fcfb3eb..e9233b4 100644
--- a/meson.build
+++ b/meson.build
@@ -124,6 +124,14 @@ else
endif
have_getopt_long = cc.has_header_symbol('getopt.h', 'getopt_long',
prefix: '#define _GNU_SOURCE')
+if not cc.has_header_symbol('limits.h', 'PATH_MAX', prefix: system_ext_define)
+ if host_machine.system() == 'windows'
+ # see https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file#maximum-path-length-limitation
+ configh_data.set('PATH_MAX', 260)
+ else
+ configh_data.set('PATH_MAX', 4096)
+ endif
+endif
# Silence some security & deprecation warnings on MSVC
# for some unix/C functions we use.