-
Notifications
You must be signed in to change notification settings - Fork 2
/
CMakeLists.txt
68 lines (56 loc) · 4.51 KB
/
CMakeLists.txt
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
cmake_minimum_required(VERSION 2.8.12)
project(Sc2BuildAnalyzer)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
find_package(Qt5 COMPONENTS Core Widgets REQUIRED)
add_subdirectory(SbaPythonReader)
add_subdirectory(SbaCore)
add_subdirectory(SbaUi)
# Copy QT binaries
file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/SbaUi/Debug)
file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/SbaUi/Release)
add_custom_target(CopyDependencies
# QT debug version
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/libEGLd.dll ${CMAKE_BINARY_DIR}/SbaUi/Debug
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/libGLESv2d.dll ${CMAKE_BINARY_DIR}/SbaUi/Debug
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5Cored.dll ${CMAKE_BINARY_DIR}/SbaUi/Debug
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5Guid.dll ${CMAKE_BINARY_DIR}/SbaUi/Debug
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5Networkd.dll ${CMAKE_BINARY_DIR}/SbaUi/Debug
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5OpenGLd.dll ${CMAKE_BINARY_DIR}/SbaUi/Debug
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5Widgetsd.dll ${CMAKE_BINARY_DIR}/SbaUi/Debug
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5Xmld.dll ${CMAKE_BINARY_DIR}/SbaUi/Debug
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5XmlPatternsd.dll ${CMAKE_BINARY_DIR}/SbaUi/Debug
# QT release version
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/libEGL.dll ${CMAKE_BINARY_DIR}/SbaUi/Release
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/libGLESv2.dll ${CMAKE_BINARY_DIR}/SbaUi/Release
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5Core.dll ${CMAKE_BINARY_DIR}/SbaUi/Release
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5Gui.dll ${CMAKE_BINARY_DIR}/SbaUi/Release
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5Network.dll ${CMAKE_BINARY_DIR}/SbaUi/Release
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5OpenGL.dll ${CMAKE_BINARY_DIR}/SbaUi/Release
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5Widgets.dll ${CMAKE_BINARY_DIR}/SbaUi/Release
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5Xml.dll ${CMAKE_BINARY_DIR}/SbaUi/Release
COMMAND ${CMAKE_COMMAND} -E copy ${Qt5Core_DIR}/../../../bin/Qt5XmlPatterns.dll ${CMAKE_BINARY_DIR}/SbaUi/Release
# S2 protocol
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/SbaPythonReader/Dependencies/s2protocol ${CMAKE_BINARY_DIR}/SbaUi/Debug/s2protocol
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/SbaPythonReader/Dependencies/s2protocol ${CMAKE_BINARY_DIR}/SbaUi/Release/s2protocol
# Python
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/SbaPythonReader/Dependencies/Python27/DLLs ${CMAKE_BINARY_DIR}/SbaUi/Debug/DLLs
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/SbaPythonReader/Dependencies/Python27/Lib ${CMAKE_BINARY_DIR}/SbaUi/Debug/Lib
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/SbaPythonReader/Dependencies/Python27/python27.dll ${CMAKE_BINARY_DIR}/SbaUi/Debug
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/SbaPythonReader/Dependencies/Python27/DLLs ${CMAKE_BINARY_DIR}/SbaUi/Release/DLLs
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/SbaPythonReader/Dependencies/Python27/Lib ${CMAKE_BINARY_DIR}/SbaUi/Release/Lib
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/SbaPythonReader/Dependencies/Python27/python27.dll ${CMAKE_BINARY_DIR}/SbaUi/Release
# Resources
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/SbaUi/Resources ${CMAKE_BINARY_DIR}/SbaUi/Debug/Resources
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/SbaUi/Resources ${CMAKE_BINARY_DIR}/SbaUi/Release/Resources
# Output Message
COMMENT "Copying from '${Qt5Core_DIR}/../../bin/' to '${CMAKE_BINARY_DIR}'" VERBATIM
COMMENT "Copying s2protocol from 'SbaPythonReader/Dependencies/s2protocol' to '${CMAKE_BINARY_DIR}'" VERBATIM
COMMENT "Copying resources from 'SbaUi/Resources' to '${CMAKE_BINARY_DIR}'" VERBATIM
)
add_dependencies(SbaCore CopyDependencies)
add_dependencies(SbaCore SbaPythonReader)
# Make the UI the startup project
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT SbaUi)