cmake_minimum_required(VERSION 3.16)

project(PipelineCmd)

set(SOURCES
    "AddMeritialDlg.cpp"
    "AECDimScriptDlg.cpp"
    "AECElSetupDlg.cpp"
    "AECInplaceComboBox.cpp"
    "AECInplaceEdit.cpp"
    "AecISODrawMake.cpp"
    "AecISOMatrix.cpp"
    "AECListCtrl.cpp"
    "AecPipeJig.cpp"
    "AecPipeLine.cpp"
    "AecPipeLineTool.cpp"
    "AecPipeSupport.cpp"
    "AecSectionDirJig.cpp"
    "BomReportDlg.cpp"
    "BoxDlg.cpp"
    "BZWZDlg.cpp"
    "ChangElDlg.cpp"
    "CirtorDlg.cpp"
    "CISODimDlg.cpp"
    "command.cpp"
    "ConeDLg.cpp"
    "CPXSTDlg.cpp"
    "CUDirDlg.cpp"
    "CXTBGDlg.cpp"
    "CXTCGDlg.cpp"
    "CylinderDlg.cpp"
    "CZXTSDlg.cpp"
    "DishDlg.cpp"
    "DrawBridgeDlg.cpp"
    "DrawDuckDlg.cpp"
    "EquBand2D.cpp"
    "EquInfToDlg.cpp"
    "EquipDesignMainBar.cpp"
    "EquipManaDlg.cpp"
    "EquipManaOperator.cpp"
    "EquipmentMakeDlg.cpp"
    "EquipSelDlg.cpp"
    "EquRotateDlg.cpp"
    "EquToDbDlg.cpp"
    "excel9.cpp"
    "ExcelWrite.cpp"
    "FlangeDlg.cpp"
    "GXLJDlg.cpp"
    "InfSelDlg.cpp"
    "IsoSysDlg.cpp"
    "JSCDlg.cpp"
    "KTDimScriptDlg.cpp"
    "KTElSetupDlg.cpp"
    "KTInitDlg.cpp"
    "KTInplaceComboBox.cpp"
    "KTInplaceEdit.cpp"
    "KTInsulateExDlg.cpp"
    "KTInsulateMainDlg.cpp"
    "KTListCtrl.cpp"
    "KTMediumDlg.cpp"
    "KTMtoTool.cpp"
    "KTTeeWeldTypeDlg.cpp"
    "KTTracingDlg.cpp"
    "LaySysSelectDlg.cpp"
    "ModiRemDlg.cpp"
    "NozzDlg.cpp"
    "ParshallFlumeDlg.cpp"
    "PipeBreakDlg.cpp"
    "PipelineCmd.cpp"
    "PipelineTools.cpp"
    "PNGDlg.cpp"
    "PyrmDlg.cpp"
    "RecttorDlg.cpp"
    "ReducerDlg.cpp"
    "SBXZDlg.cpp"
    "ScrollHelper.cpp"
    "SearchEquDlg.cpp"
    "SpereDlg.cpp"
    "StdAfx.cpp"
    "SysLayerCfg/BaseTreeGrid.cpp"
    "SysLayerCfg/DuctAttri.cpp"
    "SysLayerCfg/GetInputTextDlg.cpp"
    "SysLayerCfg/TAString.cpp"
    "SysLayerCfg/TGData.cpp"
    "SysLayerCfg/THVacCfgDataBase.cpp"
    "SysLayerCfg/THvacCfgLayStd.cpp"
    "SysLayerCfg/THVacCfgOperation.cpp"
    "SysLayerCfg/TUString.cpp"
    "SysLayerCfg/TWFormatUnit.cpp"
    "SysLayerCfg/TWValList.cpp"
    "SysLayerCfg/WDGrid.cpp"
    "SysLayerCfg/WSysLayCfgDlg.cpp"
    "SysLayerCfg/WSysTreeGrid.cpp"
    "TJBWBRDlg.cpp"
    "TJJZDlg.cpp"
    "TJXGDlg.cpp"
    "TydfDlg.cpp"
    "UserDataDlg.cpp"
    "WPipeBatReplaceDlg.cpp"
    "WPipeDimConfigDlg.cpp"
    "WPipeDrawConfigDlg.cpp"
    "XTKGDlg.cpp"
    "XXSBDlg.cpp"
    "YMJCDlg.cpp"
    "DZDXDlg.cpp"
    "DZSTDlg.cpp"
    "DZTTDlg.cpp"
    "GZCLDlg.cpp"
    "flangerecdlg.cpp"
    "gasketdlg.cpp"
    "pipeddlg.cpp"
    "insertvalvedlg.cpp"
    "pipemajdlg.cpp"
    "gjxgdlg.cpp"
    "aecpipelinemodify.cpp"
    "fitlockeddlg.cpp"
    "gjsxdlg.cpp"
    "radiodlg.cpp"
    "equipmentlibrarydlg.cpp"
    "listboxst.cpp"
    "sbgzdlg.cpp"
    "xgxgdlg.cpp"
    "bomreportexdlg.cpp"
    "dbreactorofequmke.cpp"
    "equ_modify.cpp"
    "xkmmdlg.cpp"
    "pipesystemsetting.cpp"
    "aecdbequbasedraw2d.cpp"
    "cflendfgsdlg.cpp"
    "cfzsbadddlg.cpp"
    "modellibdlgbase.cpp"
    "modellibcopytreedlg.cpp"
    "equlibdlg.cpp"
    "zhsblibdlg.cpp"
    "model3dlibdlg.cpp"
    "PipelineCmd.rc"
    # "PipelineCmd.def"
)
add_def_file_name(SOURCES "PipelineCmd")

add_library(PipelineCmd SHARED ${SOURCES})

target_set_name_and_suffix(PipelineCmd "PipelineCmd" ".arx")

target_link_objectarx(PipelineCmd PIPELINECMD_EXPORT)

target_link_libraries(PipelineCmd PRIVATE
    sqliteserver
    AecRxBase
    CoreCommand_BAL_REMOTE
)

target_precompile_headers(PipelineCmd PRIVATE StdAfx.h)

set_debug_post_build(PipelineCmd "PipelineCmd" ".arx")