]> wimlib.net Git - wimlib/blob - include/wimlib/wildcard.h
Allow configurable case sensitivity
[wimlib] / include / wimlib / wildcard.h
1 #ifndef _WIMLIB_WILDCARD_H
2 #define _WIMLIB_WILDCARD_H
3
4 #include <wimlib/types.h>
5
6 #define WILDCARD_FLAG_USE_LITERAL_IF_NO_MATCHES 0x00000001
7 #define WILDCARD_FLAG_WARN_IF_NO_MATCH          0x00000002
8 #define WILDCARD_FLAG_ERROR_IF_NO_MATCH         0x00000004
9 #define WILDCARD_FLAG_CASE_INSENSITIVE          0x00000008
10
11 extern int
12 expand_wildcard_wim_paths(WIMStruct *wim,
13                           const tchar * const *wildcards,
14                           size_t num_wildcards,
15                           tchar ***expanded_paths_ret,
16                           size_t *num_expanded_paths_ret,
17                           u32 flags);
18
19 #ifdef __WIN32__
20 extern int
21 fnmatch(const tchar *pattern, const tchar *string, int flags);
22 #  define FNM_CASEFOLD 0x1
23 #  define FNM_PATHNAME 0x2
24 #  define FNM_NOESCAPE 0x4
25 #  define FNM_NOMATCH 1
26 #else
27 #  include <fnmatch.h>
28 #  ifndef FNM_CASEFOLD
29 #    warning "FNM_CASEFOLD not defined!"
30 #    define FNM_CASEFOLD 0
31 #  endif
32 #endif
33
34 #endif /* _WIMLIB_WILDCARD_H  */