diff options
| author | 魏曹先生 <1992414357@qq.com> | 2026-03-09 22:45:24 +0800 |
|---|---|---|
| committer | 魏曹先生 <1992414357@qq.com> | 2026-03-09 22:45:24 +0800 |
| commit | c9ff9a13735010a6d3937a05e8ce9f00f9fab3ac (patch) | |
| tree | 77ad04e6db77aa037513e4d22866a89f9cf52403 /gui/gtk/CMakeLists.txt | |
| parent | 25761b5ef0d9d385ac2a371b62913f98350d6f56 (diff) | |
Add GTK GUI build system for Unix platforms
Diffstat (limited to 'gui/gtk/CMakeLists.txt')
| -rw-r--r-- | gui/gtk/CMakeLists.txt | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/gui/gtk/CMakeLists.txt b/gui/gtk/CMakeLists.txt new file mode 100644 index 0000000..2ed840c --- /dev/null +++ b/gui/gtk/CMakeLists.txt @@ -0,0 +1,56 @@ +cmake_minimum_required(VERSION 3.10) +project(butckg VERSION 1.0.0 LANGUAGES C) + +set(CMAKE_C_STANDARD 11) +set(CMAKE_C_STANDARD_REQUIRED ON) +set(CMAKE_EXPORT_COMPILE_COMMANDS ON) + +# Output directory +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) + +# Find GTK3 +find_package(PkgConfig REQUIRED) +pkg_check_modules(GTK3 REQUIRED gtk+-3.0) + +# Include directories +include_directories(${GTK3_INCLUDE_DIRS}) +link_directories(${GTK3_LIBRARY_DIRS}) + +# Add definitions +add_definitions(${GTK3_CFLAGS_OTHER}) + +# Executable +add_executable(butckg + src/main.c +) + +# Link libraries +target_link_libraries(butckg PRIVATE ${GTK3_LIBRARIES}) + +# Target properties +set_target_properties(butckg PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin +) + +# lib_butck +target_include_directories(butckg PRIVATE ${CMAKE_SOURCE_DIR}/../../.temp/target/release) + +target_link_directories(butckg PRIVATE + ${CMAKE_SOURCE_DIR}/../../.temp/target/release +) + +target_link_libraries(butckg PRIVATE + lib_butck +) + +# Check if library files exist +if(EXISTS "${CMAKE_SOURCE_DIR}/../../.temp/target/release/lib_butck.so") + message(STATUS "Found lib_butck.so") + add_custom_command(TARGET butckg POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy_if_different + "${CMAKE_SOURCE_DIR}/../../.temp/target/release/lib_butck.so" + $<TARGET_FILE_DIR:butckg> + ) +else() + message(WARNING "lib_butck.so NotFound - building without Rust library") +endif() |
