2018-01-01 13:21:02 -05:00
|
|
|
# Copyright (C) 2017 KeePassXC Team
|
|
|
|
#
|
|
|
|
# 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 2 or (at your option)
|
|
|
|
# version 3 of the License.
|
|
|
|
#
|
|
|
|
# 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/>.
|
|
|
|
|
|
|
|
find_path(ARGON2_INCLUDE_DIR argon2.h)
|
2018-10-19 15:41:56 -04:00
|
|
|
if(MINGW)
|
|
|
|
# find static library on Windows, and redefine used symbols to
|
|
|
|
# avoid definition name conflicts with libsodium
|
|
|
|
find_library(ARGON2_SYS_LIBRARIES libargon2.a)
|
|
|
|
message(STATUS "Patching libargon2...\n")
|
|
|
|
execute_process(COMMAND objcopy
|
|
|
|
--redefine-sym argon2_hash=libargon2_argon2_hash
|
|
|
|
--redefine-sym _argon2_hash=_libargon2_argon2_hash
|
|
|
|
--redefine-sym argon2_error_message=libargon2_argon2_error_message
|
|
|
|
--redefine-sym _argon2_error_message=_libargon2_argon2_error_message
|
|
|
|
${ARGON2_SYS_LIBRARIES} ${CMAKE_BINARY_DIR}/libargon2_patched.a
|
|
|
|
WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
|
|
|
|
find_library(ARGON2_LIBRARIES libargon2_patched.a PATHS ${CMAKE_BINARY_DIR} NO_DEFAULT_PATH)
|
2018-01-14 10:54:23 -05:00
|
|
|
else()
|
2018-10-19 15:41:56 -04:00
|
|
|
find_library(ARGON2_LIBRARIES argon2)
|
2018-01-14 10:54:23 -05:00
|
|
|
endif()
|
2018-01-01 13:21:02 -05:00
|
|
|
mark_as_advanced(ARGON2_LIBRARIES ARGON2_INCLUDE_DIR)
|
|
|
|
|
|
|
|
include(FindPackageHandleStandardArgs)
|
2018-01-14 10:54:23 -05:00
|
|
|
find_package_handle_standard_args(Argon2 DEFAULT_MSG ARGON2_LIBRARIES ARGON2_INCLUDE_DIR)
|