43 lines
1019 B
CMake
43 lines
1019 B
CMake
cmake_minimum_required(VERSION 3.10)
|
|
project(MotifQtApp LANGUAGES CXX)
|
|
|
|
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
|
|
|
set(CMAKE_AUTOUIC ON)
|
|
set(CMAKE_AUTOMOC ON)
|
|
set(CMAKE_AUTORCC ON)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
find_package(Qt5 COMPONENTS Widgets X11Extras REQUIRED)
|
|
|
|
# Motif
|
|
find_package(X11 REQUIRED)
|
|
find_package(PkgConfig REQUIRED)
|
|
pkg_check_modules(XCB REQUIRED xcb)
|
|
find_library(MOTIF_LIB Xm)
|
|
|
|
message(STATUS
|
|
"MOTIF_LIBRARIES = ${MOTIF_LIBRARIES}\n"
|
|
"X11_LIBRARIES = ${X11_LIBRARIES}\n"
|
|
"X11_Xt_LIB = ${X11_Xt_LIB}"
|
|
)
|
|
|
|
# 源文件
|
|
set(SOURCES
|
|
motif_app.cpp
|
|
qt_dialog.cpp
|
|
qt_dialog.h
|
|
)
|
|
|
|
# 可执行文件
|
|
add_executable(MotifQtApp ${SOURCES})
|
|
|
|
# 链接库
|
|
target_link_libraries(MotifQtApp PRIVATE Qt5::Widgets ${MOTIF_LIB} X11::X11 ${X11_Xt_LIB} ${XCB_LIBRARIES} Qt5::X11Extras)
|
|
|
|
target_include_directories(MotifQtApp PRIVATE ${X11_INCLUDE_DIR} ${XCB_INCLUDE_DIRS} )
|
|
|
|
# 处理可能的编译器参数
|
|
target_compile_options(MotifQtApp PRIVATE ${XCB_CFLAGS_OTHER}) |