1- # Copyright (C), UNIGINE. All rights reserved.
2-
31cmake_minimum_required (VERSION 3.14 )
4- project (UnigineEditorPlugin CXX )
2+ set (proj_name UnigineEditorPlugin_Python3Scripting_x64)
3+ if (CMAKE_BUILD_TYPE MATCHES "Debug" )
4+ set (proj_name UnigineEditorPlugin_Python3Scripting_x64d)
5+ endif ()
6+ project (${proj_name} CXX )
57
68set (PYTHON3SCRIPTING_VERSION "0.0.1" )
79add_definitions (-DPYTHON3SCRIPTING_VERSION= "${PYTHON3SCRIPTING_VERSION} " )
810add_subdirectory (QCodeEditor )
911
10- # set(CMAKE_INSTALL_RPATH "./")
12+
1113
1214include (${PROJECT_SOURCE_DIR} /cmake/Unigine.cmake )
1315
14- if (EXISTS ${PROJECT_SOURCE_DIR} /UnigineEditorPlugin_Python3Scripting .json.in )
16+ if (EXISTS ${PROJECT_SOURCE_DIR} /${proj_name} .json.in )
1517 set (PLUGIN_VERSION ${UNIGINE_VERSION} )
1618 set (PLUGIN_COMPAT_VERSION ${PYTHON3SCRIPTING_VERSION} )
1719 configure_file (
18- ${PROJECT_SOURCE_DIR} /UnigineEditorPlugin_Python3Scripting .json.in
20+ ${PROJECT_SOURCE_DIR} /${proj_name} .json.in
1921 ${CMAKE_CURRENT_BINARY_DIR} /Plugin.json
2022 )
2123endif ()
2224
25+ # message(FATAL_ERROR ${CMAKE_CURRENT_BINARY_DIR})
26+
27+ # Create code for QObjects
28+ set (CMAKE_AUTOMOC ON )
29+
30+ # set(CMAKE_AUTOUIC ON)
31+
32+ # Create code from resource files
33+ set (CMAKE_AUTORCC ON )
34+
35+ find_package (Qt5 COMPONENTS Core Widgets Gui REQUIRED )
36+
2337set (RESOURCES_FILE
2438 resources/UnigineEditorPlugin_Python3Scripting_resources.qrc
2539)
2640
27- set (CMAKE_AUTOMOC TRUE )
28- set (CMAKE_AUTOUIC TRUE )
29- set (CMAKE_AUTORCC TRUE )
30-
31- find_package (Qt5 COMPONENTS Widgets REQUIRED )
32-
33- add_library (UnigineEditorPlugin_Python3Scripting SHARED
41+ add_library (${proj_name} SHARED
3442 ${RESOURCES_FILE}
3543 ${PROJECT_SOURCE_DIR} /src/UnigineEditorPlugin_Python3Scripting.cpp
3644 ${PROJECT_SOURCE_DIR} /src/PythonExecutor.cpp
@@ -49,7 +57,7 @@ add_library(UnigineEditorPlugin_Python3Scripting SHARED
4957 ${PROJECT_SOURCE_DIR} /src/python3_wrapper/pytypesobjects/python3_unigine_node.cpp
5058 )
5159
52- target_include_directories (UnigineEditorPlugin_Python3Scripting SYSTEM
60+ target_include_directories (${proj_name} SYSTEM
5361 PRIVATE
5462 ${PROJECT_SOURCE_DIR} /QCodeEditor/include
5563 ${PROJECT_SOURCE_DIR} /include
@@ -60,36 +68,48 @@ target_include_directories(UnigineEditorPlugin_Python3Scripting SYSTEM
6068 ${CMAKE_CURRENT_BINARY_DIR}
6169 )
6270
63- target_link_libraries (UnigineEditorPlugin_Python3Scripting
71+ if (CMAKE_BUILD_TYPE MATCHES "Debug" )
72+ target_compile_definitions (${proj_name}
73+ PRIVATE
74+ DEBUG
75+ QT_DEBUG
76+ )
77+
78+ set_target_properties (${proj_name}
79+ PROPERTIES
80+ RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /../bin/editor_debug/
81+ LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /../bin/editor_debug/
82+ ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /../lib/editor_debug/
83+ CXX_VISIBILITY_PRESET hidden
84+ )
85+ else ()
86+ target_compile_definitions (${proj_name}
87+ PRIVATE
88+ NDEBUG
89+ QT_NO_DEBUG
90+ )
91+
92+ set_target_properties (${proj_name}
93+ PROPERTIES
94+ RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /../bin/editor/
95+ LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /../bin/editor/
96+ ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /../lib/editor/
97+ CXX_VISIBILITY_PRESET hidden
98+ )
99+ endif ()
100+
101+ target_link_libraries (${proj_name}
64102 PRIVATE
65103 Unigine::CompilerFlags
66104 Unigine::Engine
67105 Unigine::Editor
68106 Qt5::Core
107+ Qt5::Gui
69108 Qt5::Widgets
70109 QCodeEditor
71110 ${CMAKE_SOURCE_DIR} /python-bin/lib/libpython3.10.a
72111 )
73112
74- set_target_properties (UnigineEditorPlugin_Python3Scripting
75- PROPERTIES
76- RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /../bin/editor/
77- LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /../bin/editor/
78- ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR} /../lib/editor/
79- CXX_VISIBILITY_PRESET hidden
80- )
81-
82- if (CMAKE_BUILD_TYPE EQUAL "DEBUG" )
83- target_compile_definitions (UnigineEditorPlugin_Python3Scripting
84- PRIVATE
85- QT_DEBUG
86- )
87- else ()
88- target_compile_definitions (UnigineEditorPlugin_Python3Scripting
89- PRIVATE
90- QT_NO_DEBUG
91- )
92- endif ()
93113
94114
95115
0 commit comments