INCLUDE(CheckIncludeFiles) INCLUDE(CheckFunctionExists) SET(GLIB_DIR "/usr/" CACHE PATH "glib-dir") SET(MYSQL_DIR "/usr/" CACHE PATH "mysql-dir") SET(LUA_DIR "/usr/" CACHE PATH "lua-dir") SET(EVENT_DIR "/usr/" CACHE PATH "event-dir") INCLUDE_DIRECTORIES(${GLIB_DIR}/lib/glib-2.0/include ${GLIB_DIR}/include/glib-2.0/) LINK_DIRECTORIES(${GLIB_DIR}/lib) INCLUDE_DIRECTORIES(${MYSQL_DIR}/include) INCLUDE_DIRECTORIES(${LUA_DIR}/include) LINK_DIRECTORIES(${LUA_DIR}/lib) INCLUDE_DIRECTORIES(${EVENT_DIR}/include) LINK_DIRECTORIES(${EVENT_DIR}/lib) SET(CMAKE_REQUIRED_INCLUDES ${EVENT_DIR}/include ${LUA_DIR}/include ${MYSQL_DIR}/include ${GLIB_DIR}/lib/glib-2.0/include ${GLIB_DIR}/include/glib-2.0/) CHECK_INCLUDE_FILES(inttypes.h HAVE_INTTYPES_H) IF (HAVE_INTTYPES_H) ADD_DEFINITIONS(-DHAVE_INTTYPES_H) ENDIF(HAVE_INTTYPES_H) CHECK_INCLUDE_FILES(unistd.h HAVE_UNISTD_H) IF (HAVE_UNISTD_H) ADD_DEFINITIONS(-DHAVE_UNISTD_H) ENDIF(HAVE_UNISTD_H) CHECK_INCLUDE_FILES(sys/time.h HAVE_SYS_TIME_H) IF (HAVE_SYS_TIME_H) ADD_DEFINITIONS(-DHAVE_SYS_TIME_H) ENDIF(HAVE_SYS_TIME_H) CHECK_INCLUDE_FILES(sys/filio.h HAVE_SYS_FILIO_H) IF (HAVE_SYS_FILIO_H) ADD_DEFINITIONS(-DHAVE_SYS_FILIO_H) ENDIF(HAVE_SYS_FILIO_H) CHECK_INCLUDE_FILES(sys/socket.h HAVE_SYS_SOCKET_H) IF (HAVE_SYS_SOCKET_H) ADD_DEFINITIONS(-DHAVE_SYS_SOCKET_H) ENDIF(HAVE_SYS_SOCKET_H) CHECK_INCLUDE_FILES(stdlib.h HAVE_STDLIB_H) IF (HAVE_STDLIB_H) ADD_DEFINITIONS(-DHAVE_STDLIB_H) ENDIF(HAVE_STDLIB_H) CHECK_INCLUDE_FILES(netinet/in.h HAVE_NETINET_IN_H) IF (HAVE_NETINET_IN_H) ADD_DEFINITIONS(-DHAVE_NETINET_IN_H) ENDIF(HAVE_NETINET_IN_H) CHECK_FUNCTION_EXISTS(signal HAVE_SIGNAL) IF (HAVE_SIGNAL) ADD_DEFINITIONS(-DHAVE_SIGNAL) ENDIF(HAVE_SIGNAL) SET(LUALIBS ) CHECK_INCLUDE_FILES(lua.h HAVE_LUA_H) ADD_DEFINITIONS(-DHAVE_LUA_H) SET(LUALIBS lua m) SET(EVENTLIBS ) CHECK_INCLUDE_FILES(event.h HAVE_EVENT_H) ADD_DEFINITIONS(-DHAVE_EVENT_H) SET(EVENTLIBS event) CHECK_INCLUDE_FILES(mysql.h HAVE_MYSQL_H) CHECK_INCLUDE_FILES(glib.h HAVE_GLIB_H) IF(WIN32) ADD_DEFINITIONS(-DWIN32_LEAN_AND_MEAN) SET(LUALIBS lua ws2_32) ENDIF(WIN32) ADD_DEFINITIONS(-DPACKAGE_VERSION_ID=0x601 -DPACKAGE_STRING="mysql-proxy") SET(proxy_sources network-mysqld.c network-mysqld-proto.c network-mysqld-proxy.c network-mysqld-server.c network-mysqld-table.c network-conn-pool.c network-socket.c sql-tokenizer.c glib-ext.c ) ADD_EXECUTABLE(mysql-proxy mysql-proxy.c ${proxy_sources}) TARGET_LINK_LIBRARIES(mysql-proxy glib-2.0 ${LUALIBS} ${EVENTLIBS})