diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 791685576..18d737d2e 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -27,6 +27,13 @@ if (NOT GIT_HEAD OR NOT GIT_DESCRIBE) set(GIT_DESCRIBE "") endif() +find_library(ZXCVBN_LIBRARIES zxcvbn) +if(NOT ZXCVBN_LIBRARIES) + add_library(zxcvbn STATIC zxcvbn/zxcvbn.cpp) + include_directories(${CMAKE_CURRENT_SOURCE_DIR}/zxcvbn) + set(ZXCVBN_LIBRARIES zxcvbn) +endif(NOT ZXCVBN_LIBRARIES) + configure_file(version.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/version.h @ONLY) set(keepassx_SOURCES @@ -203,9 +210,6 @@ else() list(APPEND keepassx_SOURCES keys/drivers/YubiKeyStub.cpp) endif() -add_library(zxcvbn STATIC zxcvbn/zxcvbn.cpp) -target_link_libraries(zxcvbn) - add_library(autotype STATIC ${autotype_SOURCES}) target_link_libraries(autotype Qt5::Core Qt5::Widgets) @@ -218,7 +222,7 @@ target_link_libraries(keepassx_core ${keepasshttp_LIB} ${autotype_LIB} ${YUBIKEY_LIBRARIES} - zxcvbn + ${ZXCVBN_LIBRARIES} Qt5::Core Qt5::Network Qt5::Concurrent diff --git a/src/cli/CMakeLists.txt b/src/cli/CMakeLists.txt index 86edb9c01..0e27f2060 100644 --- a/src/cli/CMakeLists.txt +++ b/src/cli/CMakeLists.txt @@ -38,7 +38,7 @@ target_link_libraries(keepassxc-cli ${GCRYPT_LIBRARIES} ${GPGERROR_LIBRARIES} ${ZLIB_LIBRARIES} - zxcvbn) + ${ZXCVBN_LIBRARIES}) install(TARGETS keepassxc-cli BUNDLE DESTINATION . COMPONENT Runtime diff --git a/src/cli/EntropyMeter.cpp b/src/cli/EntropyMeter.cpp index a62cd3077..5c531af5e 100644 --- a/src/cli/EntropyMeter.cpp +++ b/src/cli/EntropyMeter.cpp @@ -20,7 +20,7 @@ #include #include #include -#include "zxcvbn/zxcvbn.h" +#include /* For pre-compiled headers under windows */ #ifdef _WIN32 diff --git a/src/core/PasswordGenerator.cpp b/src/core/PasswordGenerator.cpp index cdff204a0..21aa590e0 100644 --- a/src/core/PasswordGenerator.cpp +++ b/src/core/PasswordGenerator.cpp @@ -19,7 +19,7 @@ #include "PasswordGenerator.h" #include "crypto/Random.h" -#include "zxcvbn/zxcvbn.h" +#include PasswordGenerator::PasswordGenerator() : m_length(0)