diff options
author | Juergen Kahrs <Juergen.Kahrs@googlemail.com> | 2013-04-30 20:30:42 +0200 |
---|---|---|
committer | Juergen Kahrs <Juergen.Kahrs@googlemail.com> | 2013-04-30 20:30:42 +0200 |
commit | e58a44a35b0c64d8072d4663b68a5cfdebc6a83b (patch) | |
tree | f6bac87d58b7f30862bfd0bbd994d410a6abbaec /cmake/configure.cmake | |
parent | 30826905fb5989599ee4313e1d4af584ac478fb4 (diff) | |
download | egawk-e58a44a35b0c64d8072d4663b68a5cfdebc6a83b.tar.gz egawk-e58a44a35b0c64d8072d4663b68a5cfdebc6a83b.tar.bz2 egawk-e58a44a35b0c64d8072d4663b68a5cfdebc6a83b.zip |
Found a clean way to auto-detect wctype_t and wint_t.
Diffstat (limited to 'cmake/configure.cmake')
-rw-r--r-- | cmake/configure.cmake | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/cmake/configure.cmake b/cmake/configure.cmake index 2f0823e4..1c74bc5c 100644 --- a/cmake/configure.cmake +++ b/cmake/configure.cmake @@ -189,20 +189,12 @@ DefineTypeIfAvailable("long long int" HAVE_LONG_LONG_INT) DefineTypeIfAvailable("unsigned long long int" HAVE_UNSIGNED_LONG_LONG_INT) DefineTypeIfAvailable(intmax_t INTMAX_T) DefineTypeIfAvailable(uintmax_t UINTMAX_T) - -# Some of these dont work, maybe CheckCSourceCompiles would be better. DefineTypeIfAvailable("time_t" TIME_T_IN_SYS_TYPES_H) -DefineTypeIfAvailable("wctype_t" WCTYPE_T) -# Detection of wint_t works but in an unsatisfying way. -DefineIfSourceCompiles( - "#include \"wchar.h\" - static void testcb(wint_t w) { } - int main() { - wint_t w = 0; - testcb(w); - return 0; - }" - HAVE_WINT_T) +SET(CMAKE_EXTRA_INCLUDE_FILES wctype.h) +DefineTypeIfAvailable("wctype_t" HAVE_WCTYPE_T) +DefineTypeIfAvailable("wint_t" HAVE_WINT_T) +SET(CMAKE_EXTRA_INCLUDE_FILES) + DefineStructHasMemberIfAvailable("struct sockaddr_storage" ss_family sys/socket.h HAVE_SOCKADDR_STORAGE) DefineStructHasMemberIfAvailable("struct stat" st_blksize sys/stat.h HAVE_STRUCT_STAT_ST_BLKSIZE) DefineStructHasMemberIfAvailable("struct stat" st_blksize sys/stat.h HAVE_ST_BLKSIZE) |