cmake_minimum_required(VERSION 3.16)

project(ElecCmd)

set(SOURCES
    "AecPipeLineModify.cpp"
    "AecRoutingJig.cpp"
    "BDQGDlg.cpp"
    "CCableRouting.cpp"
    "CDLCKDLG.cpp"
    "CDLFSDlg.cpp"
    "CDLWJDlg.cpp"
    "CFSSZDlg.cpp"
    "CHBLDDlg.cpp"
    "CHBLWDlg.cpp"
    "CHFZDDlg.cpp"
    "CHZXGDlg.cpp"
    "CJZJHDlg.cpp"
    "CLGZJDlg.cpp"
    "CLJCKDlg.cpp"
    "CLJQXDlg.cpp"
    "CQCBDDlg.cpp"
    "CQJBZDlg.cpp"
    "CSBBMDlg.cpp"
    "CSBTBDlg.cpp"
    "CSDFSDlg.cpp"
    "CSetEquNoDlg.cpp"
    "CSTXXDlg.cpp"
    "CTCCZDlg.cpp"
    "CWTXXDlg.cpp"
    "CXLSListCtrl.cpp"
    "CXTLBDlg.cpp"
    "CXYCDDlg.cpp"
    "CYXKKDlg.cpp"
    "ElecCmd.cpp"
    "ElecCmdCommand.cpp"
    "excel9.cpp"
    "FITLockedDlg.cpp"
    "GJXGDlg.cpp"
    "HeaderCtrlExt.cpp"
    "KTTempZoom.cpp"
    "StdAfx.cpp"
    "aecdbecablejig.cpp"
    "aecdbecableline.cpp"
    "changeldlg.cpp"
    "dcqjdlg.cpp"
    "ecableparamdlg.cpp"
    "hdlgdlg.cpp"
    "layposdlg.cpp"
    "offsetdlg.cpp"
    "psdldlg.cpp"
    "reducerdlg.cpp"
    "tjxgdlg.cpp"
    "xsxl_tjxldlg.cpp"
    "cablelinetools.cpp"
    "crxlgdlg.cpp"
    "cthunderproofnetdraw2d.cpp"
    "ElecCmd.rc"
    # "ElecCmd.def"
)
add_def_file_name(SOURCES "ElecCmd")

add_library(ElecCmd SHARED ${SOURCES})

target_set_name_and_suffix(ElecCmd "ElecCmd" ".arx")

target_link_objectarx(ElecCmd ELECCMD_EXPORT)

target_link_libraries(ElecCmd PRIVATE
    AecRxBase
    CoreCommand_BAL_REMOTE
    sqliteserver
)

target_precompile_headers(ElecCmd PRIVATE StdAfx.h)

set_debug_post_build(ElecCmd "ElecCmd" ".arx")