cmake_minimum_required(VERSION 3.1.0)

project(fmp_epay)
SET(TARGET_NAME fmp_epay)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON)

set( CMAKE_BUILD_TYPE Debug )

find_package(Qt5 COMPONENTS Widgets Gui Core Sql Network Concurrent REQUIRED)

IF(CMAKE_BUILD_TYPE MATCHES "Debug")
  message("debug mode ")
  set(CTKCORE CTKCored.lib)
  set(CTKPLUG CTKPluginFrameworkd.lib)
  set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG  ${fmPOS_SOURCE_DIR}/debug/plugins)
ELSEIF(CMAKE_BUILD_TYPE MATCHES "Release")
  set(CTKCORE CTKCore.lib)
  set(CTKPLUG CTKPluginFramework.lib)
  set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE   ${fmPOS_SOURCE_DIR}/Release/plugins)
ENDIF()
set(ORIGIN_TARGET ${TARGET_NAME})

#ͨļȡ汾ԴļҪһЩϢ

message(STATUS "The bat : ${ORIGIN_TARGET}")
set(ABSPATH ${fmPOS_SOURCE_DIR}/fmprc_cmake.bat)
message(STATUS "The bat : ${ABSPATH}")
execute_process(COMMAND ${ABSPATH} ${TARGET_NAME} WORKING_DIRECTORY ${fmPOS_SOURCE_DIR}  OUTPUT_VARIABLE VER )
string(REGEX REPLACE  "\r|\n" " " VERTEMP ${VER})
string(STRIP ${VERTEMP} SEXY_STRING)
string(REPLACE " " ";" SEXY_LIST ${SEXY_STRING})
message(STATUS "list = ${SEXY_LIST}")
list(GET  SEXY_LIST 0 VER_TARGET)
message(STATUS "VER_TARGET = ${VER_TARGET}")
list(GET  SEXY_LIST 1 VER_TIME)
message(STATUS "VER_TIME = ${VER_TIME}")
list(GET  SEXY_LIST 2 VER_MAJOR)
message(STATUS "VER_MAJOR = ${VER_MAJOR}")
list(GET  SEXY_LIST 3 VER_MINOR)
message(STATUS "VER_MINOR = ${VER_MINOR}")
list(GET  SEXY_LIST 4 VER_REVISION)
message(STATUS "VER_REVISION = ${VER_REVISION}")
list(GET  SEXY_LIST 5 VERSION)
message(STATUS "VERSION = ${VERSION}")
list(GET  SEXY_LIST 6 VER_BUILD)
message(STATUS "VER_BUILD = ${VER_BUILD}")
set(TARGET_NAME ${TARGET_NAME}_${VERSION})

find_path(versionpath version.h.in PATHS ${CMAKE_CURRENT_SOURCE_DIR}/..)
message(${versionpath})
#Դļ滻
configure_file(
"${PROJECT_SOURCE_DIR}/../version.h.in"
"${PROJECT_SOURCE_DIR}/version.h"
)
configure_file(
"${PROJECT_SOURCE_DIR}/../MANIFEST.MF.in"
"${PROJECT_SOURCE_DIR}/res/MANIFEST.MF"
)
configure_file(
"${PROJECT_SOURCE_DIR}/../template.qrc.in"
"${PROJECT_SOURCE_DIR}/res/${ORIGIN_TARGET}.qrc"
)
configure_file("${PROJECT_SOURCE_DIR}/../pluginrc.h" "${PROJECT_SOURCE_DIR}/res/resource.h" COPYONLY)
configure_file("${PROJECT_SOURCE_DIR}/../pluginrc.rc" "${PROJECT_SOURCE_DIR}/res/${ORIGIN_TARGET}.rc" COPYONLY)

file(GLOB DIR_SRCS
    "*.h"
    "*.cpp"
)


INCLUDE_DIRECTORIES(${fmPOS_SOURCE_DIR}/include/ctk)
INCLUDE_DIRECTORIES(${fmPOS_SOURCE_DIR}/include/interface)

link_directories(${fmPOS_SOURCE_DIR}/lib)


ADD_LIBRARY (${TARGET_NAME} SHARED ${DIR_SRCS}  res/fmp_epay.qrc res/img.qrc res/fmp_epay.rc )

target_link_libraries(${TARGET_NAME}
                                Qt5::Widgets
                                Qt5::Core
                                Qt5::Gui
                                Qt5::Network
                                Qt5::Sql
                                Qt5::Concurrent
                                ${CTKCORE}
                                ${CTKPLUG})





