cmake_minimum_required (VERSION 2.6 FATAL_ERROR) set(CMAKE_CONFIGURATION_TYPES "Debug;Release;Final" CACHE STRING "possible configurations" FORCE) set_property (GLOBAL PROPERTY DEBUG_CONFIGURATIONS "Debug;Release") project (WordReference CXX) include(ExternalProject) set (LIBJSON_INCLUDE_DIRS ${PROJECT_SOURCE_DIR}/libjson) set (LIBJSON_LIB_DIR ${PROJECT_SOURCE_DIR}/libjson) set (LIBJSON_CODE_DIR ${PROJECT_SOURCE_DIR}/libjson) set (${PROJECT_NAME}_Version_Major 0) set (${PROJECT_NAME}_Version_Minor 1) set (${PROJECT_NAME}_App_Name "\"${PROJECT_NAME}\"") string (TOUPPER ${PROJECT_NAME} PROJECT_NAME_UPPER) set (${PROJECT_NAME}_SourceCodeVar "\"\$${PROJECT_NAME_UPPER}_SOURCE_PATH\"") find_package(CURL REQUIRED) #System inclusion paths include_directories(SYSTEM ${CURL_INCLUDE_DIRS} ) include_directories( . ) link_directories("${LIBJSON_LIB_DIR}") add_custom_target(build_json ALL COMMAND ${CMAKE_MAKE_PROGRAM} WORKING_DIRECTORY ${LIBJSON_CODE_DIR} COMMENT "Original libjson makefile target" ) add_library(json STATIC IMPORTED) set_property(TARGET json APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG) set_target_properties(json PROPERTIES IMPORTED_LOCATION_NOCONFIG "${LIBJSON_LIB_DIR}/libjson.a") add_dependencies(json build_json) add_executable(${PROJECT_NAME} main.cpp ) target_link_libraries(${PROJECT_NAME} "${CURL_LIBRARIES}" json )