-- QWindowKit 第三方库配置 -- 此文件被主项目通过 includes("qwindowkit") 引入 -- QWindowKit 库 target("qwindowkit") set_kind("static") -- 源文件 add_defines("QWK_CORE_STATIC","QWK_WIDGETS_STATIC", {public = true}) -- 头文件 add_includedirs("src/core") add_includedirs("src") add_files("src/core/contexts/abstractwindowcontext_p.h") add_files("src/core/contexts/cocoawindowcontext_p.h") add_files("src/core/contexts/qtwindowcontext_p.h") add_files("src/core/contexts/win32windowcontext_p.h") add_files("src/core/kernel/nativeeventfilter_p.h") add_files("src/core/kernel/sharedeventfilter_p.h") add_files("src/core/kernel/winidchangeeventfilter_p.h") -- # add_files("src/core/qwindowkit_linux.h") add_files("src/core/qwindowkit_windows.h") add_files("src/core/qwkglobal.h") add_files("src/core/qwkglobal_p.h") add_files("src/core/shared/qwkwindowsextra_p.h") add_files("src/core/shared/systemwindow_p.h") add_files("src/core/shared/windows10borderhandler_p.h") add_files("src/core/style/styleagent.h") add_files("src/core/style/styleagent_p.h") add_files("src/core/windowagentbase.h") add_files("src/core/windowagentbase_p.h") add_files("src/core/windowitemdelegate_p.h") add_files("src/widgets/qwkwidgetsglobal.h") add_files("src/widgets/widgetitemdelegate_p.h") add_files("src/widgets/widgetwindowagent.h") add_files("src/widgets/widgetwindowagent_p.h") add_files("src/core/contexts/abstractwindowcontext.cpp") --# add_files("src/core/contexts/cocoawindowcontext.mm") add_files("src/core/contexts/qtwindowcontext.cpp") add_files("src/core/contexts/win32windowcontext.cpp") add_files("src/core/kernel/nativeeventfilter.cpp") add_files("src/core/kernel/sharedeventfilter.cpp") add_files("src/core/kernel/winidchangeeventfilter.cpp") add_files("src/core/qwindowkit_windows.cpp") add_files("src/core/qwkglobal.cpp") add_files("src/core/style/styleagent.cpp") --# add_files("src/core/style/styleagent_linux.cpp") --# add_files("src/core/style/styleagent_mac.mm") add_files("src/core/style/styleagent_win.cpp") add_files("src/core/windowagentbase.cpp") add_files("src/core/windowitemdelegate.cpp") add_files("src/widgets/widgetitemdelegate.cpp") add_files("src/widgets/widgetwindowagent.cpp") --# add_files("src/widgets/widgetwindowagent_mac.cpp") add_files("src/widgets/widgetwindowagent_win.cpp") -- 包含目录 add_includedirs("include", {public = true}) add_includedirs("src", {public = true}) -- Qt 配置 add_rules("qt.shared") -- Qt MOC 处理 -- add_files("src/**/*.h", {rules = "qt.moc"}) -- C++17 标准 set_languages("c++17") -- Windows 特定配置 if is_plat("windows") then add_cxflags("/utf-8") add_syslinks("user32", "gdi32", "ole32", "oleaut32") add_syslinks("dwmapi", "uxtheme", "shell32") else add_cxflags("-Wall", "-Wextra") end target_end()