ash: error out if ASH_INTERNAL_GLOB is not selected on uClibc

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2016-12-21 04:13:23 +01:00
parent b5b1d2c5a8
commit 3a4cdf45f9

View File

@ -51,6 +51,14 @@
# define ENABLE_ASH_INTERNAL_GLOB 1 # define ENABLE_ASH_INTERNAL_GLOB 1
#endif #endif
#if !ENABLE_ASH_INTERNAL_GLOB && defined(__UCLIBC__)
# error uClibc glob() is buggy, use ASH_INTERNAL_GLOB.
# error The bug is: for "$PWD"/<pattern> ash will escape e.g. dashes in "$PWD"
# error with backslash, even ones which do not need to be: "/a-b" -> "/a\-b"
# error glob() should unbackslash them and match. uClibc does not unbackslash,
# error fails to match dirname, subsequently not expanding <pattern> in it.
#endif
#if !ENABLE_ASH_INTERNAL_GLOB #if !ENABLE_ASH_INTERNAL_GLOB
# include <glob.h> # include <glob.h>
#endif #endif