-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add optional including of eglfs platform plugins using ENABLE_EGLFS environment variable #98
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -17,8 +17,23 @@ bool PlatformPluginsDeployer::deploy() { | |
|
||
ldLog() << "Deploying platform plugins" << std::endl; | ||
|
||
if (!appDir.deployLibrary(qtPluginsPath / "platforms/libqxcb.so", appDir.path() / "usr/plugins/platforms/")) | ||
return false; | ||
if (getenv("ENABLE_EGLFS")){ | ||
if (!appDir.deployLibrary(qtPluginsPath / "platforms/libqxcb.so", appDir.path() / "usr/plugins/platforms/")) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This should be refactored into a loop. |
||
ldLog() << "No XCB platform plugin found, skipping" << std::endl; | ||
if (!appDir.deployLibrary(qtPluginsPath / "platforms/libqeglfs.so", appDir.path() / "usr/plugins/platforms/")) | ||
ldLog() << "No EGLFS platform plugin found, skipping" << std::endl; | ||
if (!appDir.deployLibrary(qtPluginsPath / "egldeviceintegrations/libqeglfs-kms-integration.so", appDir.path() / "usr/plugins/egldeviceintegrations/")) | ||
ldLog() << "No EGLFS KMS Integration plugin found, skipping" << std::endl; | ||
if (!appDir.deployLibrary(qtPluginsPath / "egldeviceintegrations/libqeglfs-x11-integration.so", appDir.path() / "usr/plugins/egldeviceintegrations/")) | ||
ldLog() << "No EGLFS X11 Integration plugin found, skipping" << std::endl; | ||
if (!appDir.deployLibrary(qtPluginsPath / "egldeviceintegrations/libqeglfs-kms-egldevice-integration.so", appDir.path() / "usr/plugins/egldeviceintegrations/")) | ||
ldLog() << "No EGLFS KMS EGLDEVICE Integration plugin found, skipping" << std::endl; | ||
if (!appDir.deployLibrary(qtPluginsPath / "egldeviceintegrations/libqeglfs-kms-emu-integration.so", appDir.path() / "usr/plugins/egldeviceintegrations/")) | ||
ldLog() << "No EGLFS EMU Integration plugin found, skipping" << std::endl; | ||
} else { | ||
if (!appDir.deployLibrary(qtPluginsPath / "platforms/libqxcb.so", appDir.path() / "usr/plugins/platforms/")) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The term "enable" implies that enabling the env var just adds additional files. But that's not true: it is more like "either egl or xcb". The name or at least the docs should reflect that. I think Can xcb be deployed safely next to egl? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. yes, by default they're both installed on Debian, you select the platform plugin with --plugin flag or an environment variable |
||
return false; | ||
} | ||
|
||
for (bf::directory_iterator i(qtPluginsPath / "platforminputcontexts"); i != bf::directory_iterator(); ++i) { | ||
if (!appDir.deployLibrary(*i, appDir.path() / "usr/plugins/platforminputcontexts/")) | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code style violation.