forked from quickshell/quickshell
build: add option to not build layershell
This commit is contained in:
parent
767500b466
commit
cab5ffc65e
|
@ -5,6 +5,8 @@ set(QT_MIN_VERSION "6.6.0")
|
||||||
set(CMAKE_CXX_STANDARD 20)
|
set(CMAKE_CXX_STANDARD 20)
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
|
||||||
|
option(LAYERSHELL "Enable wayland layershell support" ON)
|
||||||
|
|
||||||
add_compile_options(-Wall -Wextra)
|
add_compile_options(-Wall -Wextra)
|
||||||
|
|
||||||
# nix workaround
|
# nix workaround
|
||||||
|
@ -18,7 +20,10 @@ if (NOT CMAKE_BUILD_TYPE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
find_package(Qt6 REQUIRED COMPONENTS Qml QuickControls2)
|
find_package(Qt6 REQUIRED COMPONENTS Qml QuickControls2)
|
||||||
find_package(LayerShellQt REQUIRED)
|
|
||||||
|
if (LAYERSHELL)
|
||||||
|
find_package(LayerShellQt REQUIRED)
|
||||||
|
endif()
|
||||||
|
|
||||||
qt_standard_project_setup(REQUIRES 6.6)
|
qt_standard_project_setup(REQUIRES 6.6)
|
||||||
|
|
||||||
|
@ -30,7 +35,6 @@ qt_add_executable(qtshell
|
||||||
src/cpp/proxywindow.cpp
|
src/cpp/proxywindow.cpp
|
||||||
src/cpp/scavenge.cpp
|
src/cpp/scavenge.cpp
|
||||||
src/cpp/rootwrapper.cpp
|
src/cpp/rootwrapper.cpp
|
||||||
src/cpp/layershell.cpp
|
|
||||||
src/cpp/qmlglobal.cpp
|
src/cpp/qmlglobal.cpp
|
||||||
src/cpp/qmlscreen.cpp
|
src/cpp/qmlscreen.cpp
|
||||||
)
|
)
|
||||||
|
@ -40,4 +44,11 @@ qt_add_qml_module(qtshell URI QtShell)
|
||||||
# qml type registration requires this
|
# qml type registration requires this
|
||||||
target_include_directories(qtshell PRIVATE src/cpp)
|
target_include_directories(qtshell PRIVATE src/cpp)
|
||||||
|
|
||||||
target_link_libraries(qtshell PRIVATE Qt6::Qml Qt6::QuickControls2 LayerShellQtInterface)
|
target_link_libraries(qtshell PRIVATE Qt6::Qml Qt6::QuickControls2)
|
||||||
|
|
||||||
|
if (LAYERSHELL)
|
||||||
|
target_link_libraries(qtshell PRIVATE LayerShellQtInterface)
|
||||||
|
target_compile_definitions(qtshell PRIVATE CONF_LAYERSHELL)
|
||||||
|
|
||||||
|
target_sources(qtshell PRIVATE src/cpp/layershell.cpp)
|
||||||
|
endif()
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
#include <LayerShellQt/shell.h>
|
|
||||||
#include <qcommandlineoption.h>
|
#include <qcommandlineoption.h>
|
||||||
#include <qcommandlineparser.h>
|
#include <qcommandlineparser.h>
|
||||||
#include <qdir.h>
|
#include <qdir.h>
|
||||||
|
@ -11,6 +10,10 @@
|
||||||
|
|
||||||
#include "rootwrapper.hpp"
|
#include "rootwrapper.hpp"
|
||||||
|
|
||||||
|
#ifdef CONF_LAYERSHELL
|
||||||
|
# include <LayerShellQt/shell.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
int main(int argc, char** argv) {
|
int main(int argc, char** argv) {
|
||||||
const auto app = QGuiApplication(argc, argv);
|
const auto app = QGuiApplication(argc, argv);
|
||||||
QGuiApplication::setApplicationName("qtshell");
|
QGuiApplication::setApplicationName("qtshell");
|
||||||
|
@ -40,7 +43,10 @@ int main(int argc, char** argv) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if CONF_LAYERSHELL
|
||||||
LayerShellQt::Shell::useLayerShell();
|
LayerShellQt::Shell::useLayerShell();
|
||||||
|
#endif
|
||||||
|
|
||||||
// Base window transparency appears to be additive.
|
// Base window transparency appears to be additive.
|
||||||
// Use a fully transparent window with a colored rect.
|
// Use a fully transparent window with a colored rect.
|
||||||
QQuickWindow::setDefaultAlphaBuffer(true);
|
QQuickWindow::setDefaultAlphaBuffer(true);
|
||||||
|
|
Loading…
Reference in a new issue