From a315bcb09ed0f9ea79de6a9855d5704bf8e84188 Mon Sep 17 00:00:00 2001 From: Sergei Reznikov Date: Wed, 30 Aug 2017 20:23:38 +0300 Subject: Haiku patch diff --git a/CMakeLists.txt b/CMakeLists.txt index 6276761..78b8714 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -89,11 +89,13 @@ add_gcc_compiler_flags("-Wformat=2 -Wmissing-format-attribute") add_gcc_compiler_flags("-fvisibility=hidden") add_gcc_compiler_cxxflags("-fvisibility-inlines-hidden") +if (UNIX AND NOT HAIKU) if((CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 4.8.999) OR CMAKE_COMPILER_IS_CLANGXX) add_gcc_compiler_flags("-fstack-protector-strong") else() add_gcc_compiler_flags("-fstack-protector --param=ssp-buffer-size=4") endif() +endif() add_gcc_compiler_cxxflags("-fno-exceptions -fno-rtti") add_gcc_compiler_cxxflags("-Wnon-virtual-dtor -Wold-style-cast -Woverloaded-virtual") diff --git a/share/CMakeLists.txt b/share/CMakeLists.txt index a609add..1c69d2e 100644 --- a/share/CMakeLists.txt +++ b/share/CMakeLists.txt @@ -23,7 +23,7 @@ file(GLOB DATABASE_ICONS icons/database/*.png) install(FILES ${DATABASE_ICONS} DESTINATION ${DATA_INSTALL_DIR}/icons/database) -if(UNIX AND NOT APPLE) +if(UNIX AND NOT APPLE AND NOT HAIKU) install(DIRECTORY icons/application/ DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor FILES_MATCHING PATTERN "keepassx*.png" PATTERN "keepassx*.svgz" PATTERN "status" EXCLUDE PATTERN "actions" EXCLUDE PATTERN "categories" EXCLUDE) @@ -32,7 +32,7 @@ if(UNIX AND NOT APPLE) PATTERN "status" EXCLUDE PATTERN "actions" EXCLUDE PATTERN "categories" EXCLUDE) install(FILES linux/keepassxc.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications) install(FILES linux/keepassxc.xml DESTINATION ${CMAKE_INSTALL_DATADIR}/mime/packages) -endif(UNIX AND NOT APPLE) +endif(UNIX AND NOT APPLE AND NOT HAIKU) if(APPLE) install(FILES macosx/keepassxc.icns DESTINATION ${DATA_INSTALL_DIR}) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 7916855..4e55730 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -230,6 +230,9 @@ target_link_libraries(keepassx_core if(APPLE) target_link_libraries(keepassx_core "-framework Foundation") endif() +if(HAIKU) + target_link_libraries(keepassx_core network) +endif() if (UNIX AND NOT APPLE) target_link_libraries(keepassx_core Qt5::DBus) endif() diff --git a/src/gui/MainWindow.cpp b/src/gui/MainWindow.cpp index 7027d94..e95ff9f 100644 --- a/src/gui/MainWindow.cpp +++ b/src/gui/MainWindow.cpp @@ -331,10 +331,10 @@ MainWindow::MainWindow() connect(m_ui->tabWidget, SIGNAL(messageDismissGlobal()), this, SLOT(hideGlobalMessage())); connect(m_ui->tabWidget, SIGNAL(messageTab(QString,MessageWidget::MessageType)), this, SLOT(displayTabMessage(QString, MessageWidget::MessageType))); connect(m_ui->tabWidget, SIGNAL(messageDismissTab()), this, SLOT(hideTabMessage())); - +#ifndef Q_OS_HAIKU m_screenLockListener = new ScreenLockListener(this); connect(m_screenLockListener, SIGNAL(screenLocked()), SLOT(handleScreenLock())); - +#endif updateTrayIcon(); if (config()->hasAccessError()) { -- 2.13.1