mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2026-03-11 08:54:48 +00:00
* Remove individual feature flags in favor of a single `KPXC_MINIMAL` flag that removes advanced features from the build. Basic features are no longer guarded by feature flags. * Basic features: Auto-Type, Yubikey, KeeShare * Advanced features include: Browser (and passkeys), SSH Agent, and Secret Service * Networking, Documentation, and Update Checking remain as feature flags to accommodate various distro requirements. This change also cleans up the main CMakeLists.txt by re-arranging some content and placing macros into a dedicated include file. The minimum CMake version was bumped to 3.16.0 to conform to our minimum Ubuntu support of Focal (20.04). This also allows us to default to C++20, we fall back to C++17 for Qt versions less than 5.15.0 due to lack of support. Lastly this change removes the KEEPASSXC_BUILD_TYPE="PreRelease" which is never used. We only support "Snapshot" and "Release" now.
41 lines
1.6 KiB
CMake
41 lines
1.6 KiB
CMake
# Copyright (C) 2024 KeePassXC Team <team@keepassxc.org>
|
|
#
|
|
# This program is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation, either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
if(KPXC_FEATURE_BROWSER)
|
|
include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
|
|
|
|
set(browser_SOURCES
|
|
BrowserAccessControlDialog.cpp
|
|
BrowserAction.cpp
|
|
BrowserCbor.cpp
|
|
BrowserEntryConfig.cpp
|
|
BrowserEntrySaveDialog.cpp
|
|
BrowserHost.cpp
|
|
BrowserMessageBuilder.cpp
|
|
BrowserPasskeys.cpp
|
|
BrowserPasskeysClient.cpp
|
|
BrowserPasskeysConfirmationDialog.cpp
|
|
BrowserSettingsPage.cpp
|
|
BrowserSettingsWidget.cpp
|
|
BrowserService.cpp
|
|
BrowserSettings.cpp
|
|
BrowserShared.cpp
|
|
CustomTableWidget.cpp
|
|
NativeMessageInstaller.cpp
|
|
PasskeyUtils.cpp)
|
|
|
|
add_library(browser STATIC ${browser_SOURCES})
|
|
target_link_libraries(browser Qt5::Core Qt5::Concurrent Qt5::Widgets Qt5::Network ${BOTAN_LIBRARIES})
|
|
endif()
|