1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
set(CL_SRC_ROOT "${CMAKE_CURRENT_LIST_DIR}/..")
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CL_SRC_ROOT}/cmake/Modules/")
set(BUILD_DIRECTORY ${CMAKE_BINARY_DIR})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}/lib")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}/bin")
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}/lib")
# Our project is called 'codelite' this is how it will be called in visual studio, and in our makefiles.
project(codelite-cli)
set(CMAKE_EXPORT_COMPILE_COMMANDS 1)
# It was noticed that when using MinGW gcc it is essential that 'core' is mentioned before 'base'.
include("${wxWidgets_USE_FILE}")
if(APPLE)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -stdlib=libc++")
else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
endif()
if(NOT CL_WX_CONFIG)
set(CL_WX_CONFIG "wx-config")
endif()
# we need wxWidgets flags to be set only for the c++ files, so we do it like this by setting the CMAKE_CXX_FLAGS
if(NOT MINGW)
execute_process(
COMMAND ${CL_WX_CONFIG} --cxxflags
OUTPUT_VARIABLE WX_CXX_FLAGS
OUTPUT_STRIP_TRAILING_WHITESPACE)
else()
execute_process(
COMMAND sh ${CL_WX_CONFIG} --cxxflags
OUTPUT_VARIABLE WX_CXX_FLAGS
OUTPUT_STRIP_TRAILING_WHITESPACE)
endif()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${WX_CXX_FLAGS}")
message("${WX_CXX_FLAGS}")
# prepare list of files
file(
GLOB
CODELITELIB_SRCS
"${CL_SRC_ROOT}/CodeLite/SocketAPI/*.cpp"
"${CL_SRC_ROOT}/sdk/wxsqlite3/src/*.cpp"
"${CL_SRC_ROOT}/CodeLite/*.c"
"${CL_SRC_ROOT}/CodeLite/*.cpp"
"${CL_SRC_ROOT}/sdk/codelite_indexer/network/*.cpp"
"${CL_SRC_ROOT}/codelite-cli/sqlite3.c")
file(GLOB CODELITESERVER_SRCS "*.cpp")
# and finally prepare list of includes directories
include_directories("${CL_SRC_ROOT}/sdk/wxsqlite3/include" "${CL_SRC_ROOT}/CodeLite"
"${CL_SRC_ROOT}/sdk/codelite_indexer/network")
# Define the output
add_library(codelitelib STATIC ${CODELITELIB_SRCS})
target_compile_definitions(codelitelib PRIVATE wxUSE_GUI=0)
add_executable(codelite-cli ${CODELITESERVER_SRCS})
target_compile_definitions(codelite-cli PRIVATE wxUSE_GUI=0)
set(UTIL_LIB "")
if(UNIX)
set(UTIL_LIB "-lutil -ldl")
endif(UNIX)
target_link_libraries(codelite-cli codelitelib ${LINKER_OPTIONS} ${wxWidgets_LIBRARIES} ${UTIL_LIB})
# add_subdirectory(codelite-client)
|