| 1 | PROJECT(GNUGo) |
| 2 | |
| 3 | INCLUDE(CheckIncludeFiles) |
| 4 | CHECK_INCLUDE_FILES(sys/times.h HAVE_SYS_TIMES_H) |
| 5 | CHECK_INCLUDE_FILES(sys/time.h HAVE_SYS_TIME_H) |
| 6 | CHECK_INCLUDE_FILES("sys/time.h;time.h" TIME_WITH_SYS_TIME) |
| 7 | CHECK_INCLUDE_FILES(unistd.h HAVE_UNISTD_H) |
| 8 | CHECK_INCLUDE_FILES(curses.h HAVE_CURSES_H) |
| 9 | CHECK_INCLUDE_FILES(glib.h HAVE_GLIB_H) |
| 10 | CHECK_INCLUDE_FILES(ncurses/curses.h HAVE_NCURSES_CURSES_H) |
| 11 | CHECK_INCLUDE_FILES(ncurses/term.h HAVE_NCURSES_TERM_H) |
| 12 | CHECK_INCLUDE_FILES(sys/types.h HAVE_SYS_TYPES_H) |
| 13 | CHECK_INCLUDE_FILES(term.h HAVE_TERM_H) |
| 14 | CHECK_INCLUDE_FILES(crtdbg.h HAVE_CRTDBG_H) |
| 15 | CHECK_INCLUDE_FILES("winsock.h;io.h" HAVE_WINSOCK_IO_H) |
| 16 | |
| 17 | INCLUDE(CheckTypeSize) |
| 18 | CHECK_TYPE_SIZE(long SIZEOF_LONG) |
| 19 | |
| 20 | INCLUDE(CheckFunctionExists) |
| 21 | CHECK_FUNCTION_EXISTS(times HAVE_TIMES) |
| 22 | CHECK_FUNCTION_EXISTS(usleep HAVE_USLEEP) |
| 23 | CHECK_FUNCTION_EXISTS(gettimeofday HAVE_GETTIMEOFDAY) |
| 24 | CHECK_FUNCTION_EXISTS(vsnprintf HAVE_VSNPRINTF) |
| 25 | CHECK_FUNCTION_EXISTS(_vsnprintf HAVE__VSNPRINTF) |
| 26 | # FIXME: Probably necessary to add the glib library for this test to pass. |
| 27 | CHECK_FUNCTION_EXISTS(g_vsnprintf HAVE_G_VSNPRINTF) |
| 28 | |
| 29 | SET(PRAGMAS "") |
| 30 | IF(WIN32) |
| 31 | SET(PRAGMAS "#pragma warning(disable: 4244 4305)") |
| 32 | ENDIF(WIN32) |
| 33 | |
| 34 | IF(MSVC80) |
| 35 | ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE) |
| 36 | ADD_DEFINITIONS(-D_CRT_NONSTDC_NO_DEPRECATE) |
| 37 | ENDIF(MSVC80) |
| 38 | |
| 39 | CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake |
| 40 | ${CMAKE_CURRENT_BINARY_DIR}/config.h) |
| 41 | |
| 42 | # Make sure all files know about and can find config.h |
| 43 | ADD_DEFINITIONS(-DHAVE_CONFIG_H) |
| 44 | INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) |
| 45 | |
| 46 | # Recurse into subdirectories. |
| 47 | ADD_SUBDIRECTORY(utils) |
| 48 | ADD_SUBDIRECTORY(sgf) |
| 49 | ADD_SUBDIRECTORY(engine) |
| 50 | ADD_SUBDIRECTORY(patterns) |
| 51 | ADD_SUBDIRECTORY(interface) |