include(CheckSymbolExists) include(CheckIncludeFile) include(CheckIncludeFileCXX) include(CheckIncludeFiles) include(CheckFunctionExists) check_include_file(arpa/inet.h HAVE_ARPA_INET_H) check_include_file(assert.h HAVE_ASSERT_H) check_include_file(dlfcn.h HAVE_DLFCN_H) check_include_file(fcntl.h HAVE_FCNTL_H) check_include_file(float.h HAVE_FLOAT_H) check_include_file(inttypes.h HAVE_INTTYPES_H) check_include_file(limits.h HAVE_LIMITS_H) check_include_file(malloc.h HAVE_MALLOC_H) check_include_file(regex.h HAVE_REGEX_H) check_include_file(netdb.h HAVE_NETDB_H) check_include_file(netinet/in.h HAVE_NETINET_IN_H) check_include_file(stdio.h HAVE_STDIO_H) check_include_file(stdbool.h HAVE_STDBOOLH) check_include_file(stddef.h HAVE_STDDEF_H) check_include_file(stdlib.h HAVE_STDLIB_H) check_include_file(stdint.h HAVE_STDINT_H) check_include_file(syslog.h HAVE_SYSLOG_H) check_include_file(unistd.h HAVE_UNISTD_H) check_include_file(pthread.h HAVE_PTHREAD_H) check_include_file(math.h HAVE_MATH_H) check_include_file(memory.h HAVE_MEMORY_H) check_include_file(sys/file.h HAVE_SYS_FILE_H) check_include_file(sys/ioctl.h HAVE_SYS_IOCTL_H) check_include_file(sys/time.h HAVE_SYS_TIME_H) check_include_file(sys/param.h HAVE_SYS_PARAM_H) check_include_file(sys/resource.h HAVE_SYS_RESOURCE_H) check_include_file(sys/socket.h HAVE_SYS_SOCKET_H) check_include_file(sys/stat.h HAVE_SYS_STAT_H) check_include_file(sys/types.h HAVE_SYS_TYPES_H) check_include_file(sys/un.h HAVE_SYS_UN_H) check_include_file(sys/poll.h HAVE_SYS_POLL_H) check_include_file(sys/select.h HAVE_SYS_SELECT_H) check_include_file(sys/epoll.h HAVE_SYS_EPOLL_H) check_include_file(sys/eventfd.h HAVE_SYS_EVENTFD_H) check_include_file(sys/inotify.h HAVE_SYS_INOTIFY_H) check_include_file(sys/signalfd.h HAVE_SYS_SIGNALFD_H) check_include_file(sched.h HAVE_SCHED_H) check_include_file(strings.h HAVE_STRINGS_H) check_include_file(string.h HAVE_STRING_H) check_include_file(pcap/pcap.h HAVE_PCAP_H) check_include_file(getopt.h HAVE_GETOPT_H) check_include_file(grp.h HAVE_GRP_H) check_include_file(pwd.h HAVE_PWD_H) check_include_file(locale.h HAVE_LOCALE_H) check_include_file(luaconf.h HAVE_LUACONF_H) check_include_file(lualib.h HAVE_LUALIB_H) check_include_file(lua.h HAVE_LUA_H) check_function_exists(clock_gettime HAVE_CLOCK_GETTIME) check_function_exists(floor HAVE_FLOOR) check_function_exists(gethostbyname HAVE_GETHOSTBYNAME) check_function_exists(getpagesize HAVE_GETPAGESIZE) check_function_exists(gettimeofday HAVE_GETTIMEOFDAY) check_function_exists(inet_ntoa HAVE_INET_NTOA) check_function_exists(malloc HAVE_MALLOC) check_function_exists(memmove HAVE_MEMMOVE) check_function_exists(memset HAVE_MEMSET) check_function_exists(mmap HAVE_MMAP) check_function_exists(munmap HAVE_MUNMAP) check_function_exists(pow HAVE_POW) check_function_exists(regcomp HAVE_REGCOMP) check_function_exists(setenv HAVE_SETENV) check_function_exists(socket HAVE_SOCKET) check_function_exists(sqrt HAVE_SQRT) check_function_exists(strchr HAVE_STRCHR) check_function_exists(strcspn HAVE_STRCSPN) check_function_exists(strdup HAVE_STRDUP) check_function_exists(strerror HAVE_STRERROR) check_function_exists(strrchr HAVE_STRRCHR) check_function_exists(strspn HAVE_STRRSPN) check_function_exists(strstr HAVE_STRSTR) check_function_exists(strtol HAVE_STRTOL) check_function_exists(strtoul HAVE_STRTOUL) check_function_exists(strtoull HAVE_STRTOULL) check_function_exists(epoll_ctl HAVE_EPOLL_CTL) check_function_exists(eventfd HAVE_EVENTFD) check_function_exists(inotify_init HAVE_INOTIFY_INIT) check_function_exists(nanosleep HAVE_NANOSLEEP) check_function_exists(poll HAVE_POLL) check_function_exists(select HAVE_SELECT) check_function_exists(signalfd HAVE_SIGNALFD) check_function_exists(gethostbyname_r HAVE_GETHOSTBYNAME_R) check_function_exists(strerror_r HAVE_STRERROR_R) check_function_exists(ether_aton_r HAVE_ETHER_ATON_R) check_function_exists(inet_network HAVE_INET_NETWORK) check_function_exists(chroot HAVE_CHROOT) check_function_exists(getopt_long HAVE_GETOPT_LONG) include(CheckCSourceCompiles) include(CheckCXXSourceCompiles) check_cxx_source_compiles( " #include int main(){char b;char *a = strerror_r(0, &b, 0); return(0);} " STRERROR_R_CHAR_P) # generate a config.h file configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake/p4studio_config.h.cmake" "${CMAKE_CURRENT_BINARY_DIR}/p4studio_config.h")