2009-03-28 12:24:51 +00:00
CMAKE_MINIMUM_REQUIRED ( VERSION 2.6.0 FATAL_ERROR )
cmake_policy ( VERSION 2.6.0 )
2013-07-20 08:30:48 +00:00
SET ( CMAKE_MODULE_PATH ${ CMAKE_SOURCE_DIR } /cmake )
2009-03-28 12:24:51 +00:00
INCLUDE ( CheckIncludeFiles )
INCLUDE ( CheckLibraryExists )
INCLUDE ( FindPkgConfig )
2013-07-20 08:30:48 +00:00
INCLUDE ( AddTargetProperties )
2009-03-28 12:24:51 +00:00
2010-10-28 20:12:45 +00:00
PROJECT ( fcgi-cgi C )
2013-05-23 15:46:46 +00:00
SET ( PACKAGE_VERSION 0.2.1 )
2013-07-20 08:30:48 +00:00
2009-03-28 12:24:51 +00:00
IF ( "${CMAKE_BUILD_TYPE}" STREQUAL "" )
SET ( CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel." FORCE )
ENDIF ( "${CMAKE_BUILD_TYPE}" STREQUAL "" )
# libev
2013-07-20 08:30:48 +00:00
FIND_PACKAGE ( LibEV REQUIRED )
2009-03-28 12:24:51 +00:00
# GLIB 2
pkg_check_modules ( GLIB2 REQUIRED glib-2.0 )
SET ( GLIB_INCLUDES ${ GLIB2_INCLUDE_DIRS } ${ GLIB2_INCLUDE_DIRS } /glib-2.0/ ${ GLIB2_INCLUDE_DIRS } /glib-2.0/include/ )
INCLUDE_DIRECTORIES ( ${ GLIB_INCLUDES } )
SET ( MAIN_SOURCE fastcgi.c fcgi-cgi.c )
SET ( PACKAGE_NAME ${ CMAKE_PROJECT_NAME } )
SET ( PACKAGE_VERSION ${ PACKAGE_VERSION } )
CONFIGURE_FILE ( ${ CMAKE_CURRENT_SOURCE_DIR } /config.h.cmake ${ CMAKE_BINARY_DIR } /config.h ESCAPE_QUOTES )
ADD_DEFINITIONS ( -DHAVE_CONFIG_H )
INCLUDE_DIRECTORIES ( ${ CMAKE_CURRENT_BINARY_DIR } ${ CMAKE_CURRENT_SOURCE_DIR } )
add_executable ( fcgi-cgi ${ MAIN_SOURCE } )
ADD_TARGET_PROPERTIES ( fcgi-cgi COMPILE_FLAGS "-std=gnu99 -Wall -g -Wshadow -W -pedantic -fPIC -D_GNU_SOURCE" )
# libev
2013-07-20 08:30:48 +00:00
TARGET_LINK_LIBRARIES ( fcgi-cgi "${LIBEV_LDFLAGS}" )
2009-03-28 12:24:51 +00:00
# GLIB 2
2010-10-28 21:36:58 +00:00
TARGET_LINK_LIBRARIES ( fcgi-cgi "${GLIB2_LIBRARIES}" )
2009-03-28 12:24:51 +00:00
ADD_TARGET_PROPERTIES ( fcgi-cgi LINK_FLAGS "${GLIB2_LDFLAGS}" )
2013-07-20 08:30:48 +00:00
ADD_TARGET_PROPERTIES ( fcgi-cgi COMPILE_FLAGS "${GLIB2_CFLAGS_OTHER}" "${LIBEV_CFLAGS}" )
2009-03-28 12:24:51 +00:00
INSTALL ( TARGETS fcgi-cgi DESTINATION bin )
2010-05-07 20:50:48 +00:00
# man page
SET ( CMAKE_MAN_DIR "share/man" CACHE STRING
" I n s t a l l l o c a t i o n f o r m a n pages ( relative to prefix ) . " )
MARK_AS_ADVANCED ( CMAKE_MAN_DIR )
INSTALL ( FILES fcgi-cgi.1 DESTINATION ${ CMAKE_MAN_DIR } /man1 )