# define minimum cmake version
cmake_minimum_required(VERSION 2.6.2)
 
# Our project is called 'codelite' this is how it will be called in
# visual studio, and in our makefiles. 
project(codelite-terminal)

if ( UNIX OR MINGW AND NOT APPLE )
    find_package(wxWidgets COMPONENTS std stc aui REQUIRED)
else ( UNIX AND NOT APPLE )
    find_package(wxWidgets REQUIRED)
endif ( UNIX OR MINGW AND NOT APPLE )

# Add RPATH
if ( UNIX )
set (LINKER_OPTIONS -Wl,-rpath,"${PLUGINS_DIR}")
endif ( UNIX )

# 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} --debug=no --cxxflags OUTPUT_VARIABLE WX_CXX_FLAGS OUTPUT_STRIP_TRAILING_WHITESPACE)
else ()
    execute_process(COMMAND sh ${CL_WX_CONFIG} --debug=no --cxxflags OUTPUT_VARIABLE WX_CXX_FLAGS OUTPUT_STRIP_TRAILING_WHITESPACE)
endif ()
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${WX_CXX_FLAGS}")

add_definitions(-DNDEBUG)

# prepare list of files
FILE(GLOB SRCS "*.cpp")

# Define the output
if (MINGW)
    add_definitions(-DWINDRES)
    execute_process(COMMAND sh ${CL_WX_CONFIG} --debug=no --rescomp OUTPUT_VARIABLE WX_RC_FLAGS OUTPUT_STRIP_TRAILING_WHITESPACE)
    string(REGEX REPLACE "windres" "" WX_RC_FLAGS ${WX_RC_FLAGS})
    set (CMAKE_RC_FLAGS "${CMAKE_RC_FLAGS} ${WX_RC_FLAGS}")
    add_executable(codelite-terminal ${SRCS} win_resources.rc)
else()
    add_executable(codelite-terminal ${SRCS})
endif()

set ( UTIL_LIB "" )
if ( UNIX )
    set( UTIL_LIB "-lutil")
endif ( UNIX )

target_link_libraries(codelite-terminal ${LINKER_OPTIONS} ${wxWidgets_LIBRARIES} ${UTIL_LIB} )

install(TARGETS codelite-terminal DESTINATION ${CL_PREFIX}/bin)
add_dependencies(codelite-terminal plugin)
