Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 36 additions & 13 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,18 @@ project(turnbinds LANGUAGES CXX)

add_executable(turnbinds)

set_source_files_properties(
"${CMAKE_CURRENT_SOURCE_DIR}/src/turnbinds.rc"
PROPERTIES OBJECT_DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/src/turnbinds.ico"
)
if(WIN32)
set_source_files_properties(
"${CMAKE_CURRENT_SOURCE_DIR}/src/turnbinds.rc"
PROPERTIES OBJECT_DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/src/turnbinds.ico"
)

file(GLOB_RECURSE src CONFIGURE_DEPENDS src/*.cpp src/*.rc)
else()
file(GLOB_RECURSE src CONFIGURE_DEPENDS src/*.cpp)
endif()

file(GLOB_RECURSE src CONFIGURE_DEPENDS src/*.cpp src/*.rc)
target_sources(turnbinds PRIVATE ${src})

target_include_directories(turnbinds PRIVATE src)
Expand All @@ -22,14 +27,32 @@ set_property(TARGET turnbinds PROPERTY CXX_STANDARD 26)
target_compile_options(turnbinds PRIVATE
-Wall -Werror
-Wno-switch
-Wno-vla-cxx-extension
$<$<CXX_COMPILER_ID:Clang>:-Wno-vla-cxx-extension>
$<$<CXX_COMPILER_ID:GNU>:-Wno-vla>
$<$<CXX_COMPILER_ID:GNU>:-Wno-sign-compare>
$<$<CXX_COMPILER_ID:GNU>:-Wno-subobject-linkage>
)

target_link_libraries(turnbinds PRIVATE version pathcch)

target_link_options(turnbinds PRIVATE
-static
$<$<CONFIG:Release>:-Wl,--strip-all>
)
if(WIN32)
target_link_libraries(turnbinds PRIVATE version pathcch)

target_link_options(turnbinds PRIVATE
-static
$<$<CONFIG:Release>:-Wl,--strip-all>
)
else()
find_package(PkgConfig REQUIRED)
pkg_check_modules(XLIBS REQUIRED IMPORTED_TARGET x11 xtst xfixes)
target_link_libraries(turnbinds PRIVATE PkgConfig::XLIBS)

target_compile_definitions(turnbinds PRIVATE
VERSION_STRING="2.2.0"
COPYRIGHT_STRING="https://github.com/t5mat/turnbinds"
)

target_link_options(turnbinds PRIVATE
$<$<CONFIG:Release>:-Wl,--strip-all>
)
endif()

install(TARGETS turnbinds RUNTIME DESTINATION .)
Loading