aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt3
-rw-r--r--cmake/configure.cmake18
2 files changed, 5 insertions, 16 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c8ec550d..cdc12dfa 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -45,10 +45,7 @@ if(WIN32 OR "${CMAKE_SYSTEM_NAME}" STREQUAL "Windows")
# On Ubuntu 12.04 patches to gawk's source code are needed:
# - insert #include <windows.h> at the top of awk.h
# - remove function execvp from pc/gawkmisc.pc
- DefineConfigHValue(HAVE_WCTYPE_T 1)
- DefineConfigHValue(WEOF EOF)
DefineConfigHValue(HAVE_USLEEP 1)
- DefineConfigHValue(HAVE_WINT_T 1)
DefineConfigHValue(HAVE_ISWUPPER 1)
DefineConfigHValue(HAVE_SETENV 1)
DefineConfigHValue(STDC_HEADERS 1)
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)