mirror of https://github.com/daleclack/My_GtkUi
Update CMakeLists.txt
This commit is contained in:
parent
25163fac04
commit
a14c96f4ea
|
@ -1,6 +1,6 @@
|
|||
set(CMAKE_CXX_STANDARD 17)
|
||||
cmake_minimum_required(VERSION 3.0.0)
|
||||
project(My_GtkUi VERSION 2.2.0)
|
||||
project(My_GtkUi VERSION 2.5.0)
|
||||
|
||||
include(CTest)
|
||||
enable_testing()
|
||||
|
@ -14,12 +14,54 @@ find_package (PkgConfig REQUIRED)
|
|||
pkg_check_modules (GTK3 REQUIRED gtk+-3.0)
|
||||
include_directories (${GTK3_INCLUDE_DIRS})
|
||||
link_directories (${GTK3_LIBRARY_DIRS})
|
||||
add_executable(My_GtkUi src/main.cpp src/background.cpp src/game.cpp src/TextEditor.cpp
|
||||
src/panel1.cpp src/panel2.cpp src/win1.cpp src/winconf.cpp src/resources.cpp)
|
||||
|
||||
IF(WIN32)
|
||||
SET(CMAKE_EXE_LINKER_FLAGS -mwindows)
|
||||
ENDIF(WIN32)
|
||||
#Compile a resource.cpp file
|
||||
|
||||
add_definitions (${GTK3_CFLAGS_OTHER})
|
||||
# Step 1:
|
||||
find_program(GLIB_COMPILE_RESOURCES NAMES glib-compile-resources REQUIRED)
|
||||
|
||||
set(GRESOURCE_C resource.cpp)
|
||||
set(GRESOURCE_XML gtk42.resource.xml)
|
||||
|
||||
# Step 2:
|
||||
add_custom_command(
|
||||
OUTPUT ${GRESOURCE_C}
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/res
|
||||
COMMAND ${GLIB_COMPILE_RESOURCES}
|
||||
ARGS
|
||||
${GRESOURCE_XML}
|
||||
--target=${CMAKE_CURRENT_BINARY_DIR}/${GRESOURCE_C}
|
||||
--generate-source
|
||||
)
|
||||
|
||||
# Step 3:
|
||||
add_custom_target(
|
||||
my-gresource
|
||||
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${GRESOURCE_C}
|
||||
)
|
||||
|
||||
# Step 4:Add the resource to compile list and compile
|
||||
if(WIN32)
|
||||
set(app_WINRC icon.rc)
|
||||
set_property(SOURCE icon.rc APPEND PROPERTY
|
||||
OBJECT_DEPENDS ${PROJECT_SOURCE_DIR}/icon.ico
|
||||
)
|
||||
add_executable(My_GtkUi WIN32 ${app_WINRC} src/main.cpp src/background.cpp src/game.cpp
|
||||
src/TextEditor.cpp src/panel1.cpp src/panel2.cpp src/win1.cpp src/winconf.cpp
|
||||
${CMAKE_CURRENT_BINARY_DIR}/${GRESOURCE_C})
|
||||
else()
|
||||
add_executable(My_GtkUi src/main.cpp src/background.cpp src/game.cpp src/TextEditor.cpp
|
||||
src/panel1.cpp src/panel2.cpp src/win1.cpp src/winconf.cpp
|
||||
${CMAKE_CURRENT_BINARY_DIR}/${GRESOURCE_C})
|
||||
endif(WIN32)
|
||||
|
||||
set_source_files_properties(
|
||||
${CMAKE_CURRENT_BINARY_DIR}/${GRESOURCE_C}
|
||||
PROPERTIES GENERATED TRUE
|
||||
)
|
||||
|
||||
# Step 5:Add Dependencies and link
|
||||
add_dependencies(${PROJECT_NAME} my-gresource)
|
||||
|
||||
SET (CMAKE_EXTRA_CXX_FLAGS ${GTK3_CFLAGS_OTHER})
|
||||
target_link_libraries (${PROJECT_NAME} ${GTK3_LIBRARIES} -lpthread -lm)
|
||||
|
|
Loading…
Reference in New Issue