2009-04-06 16:44:01 -04:00
SET ( EXE_NAME curl )
# First try to locate hugehelp.c to see if it has already been created
# TODO Find the file WITHOUT adding a cache entry!!! Or else the user can delete the file after the script was first run, and the script won't notice it has gone.
FIND_FILE ( HUGEHELP_C_FILE hugehelp.c PATHS . NO_DEFAULT_PATH )
IF ( NOT HUGEHELP_C_FILE )
MESSAGE ( STATUS "Warning: hugehelp.c file was not generated before. Generating an 'empty' file..." )
2009-04-08 16:29:50 -04:00
FILE ( WRITE hugehelp.c "/* built-in manual is disabled, blank function */\n#include \" hugehelp.h\ "\nvoid hugehelp(void) {}\n\n" )
2009-04-06 16:44:01 -04:00
ENDIF ( )
2009-04-06 18:45:17 -04:00
TRANSFORM_MAKEFILE_INC ( "Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake" )
INCLUDE ( ${ CMAKE_CURRENT_BINARY_DIR } /Makefile.inc.cmake )
2009-04-06 16:44:01 -04:00
IF ( MSVC )
LIST ( APPEND CURL_SOURCE curl.rc )
ENDIF ( )
ADD_EXECUTABLE (
$ { E X E _ N A M E }
2009-04-06 18:45:17 -04:00
$ { c u r l _ S O U R C E S }
2009-04-06 16:44:01 -04:00
)
2009-04-06 18:45:17 -04:00
SOURCE_GROUP ( "cURLX source files" FILES ${ CURLX_ONES } )
SOURCE_GROUP ( "cURL source files" FILES ${ CURL_SOURCES } )
SOURCE_GROUP ( "cURL header files" FILES ${ CURL_HFILES } )
2009-04-06 16:44:01 -04:00
INCLUDE_DIRECTORIES (
$ { C U R L _ S O U R C E _ D I R } / l i b # To be able to reach "setup_once.h"
$ { C U R L _ B I N A R Y _ D I R } / l i b # To be able to reach "config.h"
$ { C U R L _ B I N A R Y _ D I R } / i n c l u d e # To be able to reach "curl/curlbuild.h"
)
# Setup dependencies
2009-04-06 17:05:44 -04:00
SETUP_CURL_DEPENDENCIES ( ${ EXE_NAME } )
2009-04-06 16:44:01 -04:00
TARGET_LINK_LIBRARIES ( ${ EXE_NAME } libcurl )
################################################################################
#SET_TARGET_PROPERTIES(${EXE_NAME} ARCHIVE_OUTPUT_DIRECTORY "blah blah blah")
#SET_TARGET_PROPERTIES(${EXE_NAME} RUNTIME_OUTPUT_DIRECTORY "blah blah blah")
#SET_TARGET_PROPERTIES(${EXE_NAME} LIBRARY_OUTPUT_DIRECTORY "blah blah blah")
# Add the postfix to the executable since it is not added automatically as for modules and shared libraries
SET_TARGET_PROPERTIES ( ${ EXE_NAME } PROPERTIES DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}" )
IF ( MSVC )
IF ( NOT BUILD_RELEASE_DEBUG_DIRS )
# Ugly workaround to remove the "/debug" or "/release" in each output
SET_TARGET_PROPERTIES ( ${ EXE_NAME } PROPERTIES PREFIX "../" )
ENDIF ( )
ENDIF ( )
#INCLUDE(ModuleInstall OPTIONAL)