Skip to content
GitLab
Explore
Projects
Groups
Topics
Snippets
Projects
Groups
Topics
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Коников Максим Павлович
libakrypt-0.x
Commits
096eb54e
Commit
096eb54e
authored
5 months ago
by
Нестеренко Алексей Юрьевич
Browse files
Options
Download
Patches
Plain Diff
Добавлена опция AK_BASE для сборки единой библиотеки
parent
7d3ff709
master
No related merge requests found
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
CMakeLists.txt
+96
-45
CMakeLists.txt
Changelog.md
+3
-1
Changelog.md
aktool/aktool.1
+1
-1
aktool/aktool.1
cmake/DetectFlags.cmake
+2
-0
cmake/DetectFlags.cmake
cmake/DetectLibraries.cmake
+9
-9
cmake/DetectLibraries.cmake
cmake/MakeAktool.cmake
+22
-10
cmake/MakeAktool.cmake
doc/20-install-guide.rst
+17
-0
doc/20-install-guide.rst
examples/tests/test-mpzn-password.c
+1
-1
examples/tests/test-mpzn-password.c
with
151 additions
and
67 deletions
+151
-67
CMakeLists.txt
+
96
−
45
View file @
096eb54e
...
@@ -21,6 +21,7 @@ project( libakrypt C )
...
@@ -21,6 +21,7 @@ project( libakrypt C )
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
# Перечень доступных опций для сборки библиотеки
# Перечень доступных опций для сборки библиотеки
option
(
AK_BASE
"Build two separate libraries - libkrypt and libakrypt-base"
OFF
)
option
(
AK_SHARED_LIB
"Build the shared library"
ON
)
option
(
AK_SHARED_LIB
"Build the shared library"
ON
)
option
(
AK_STATIC_LIB
"Build the static library"
OFF
)
option
(
AK_STATIC_LIB
"Build the static library"
OFF
)
option
(
AK_EXAMPLES
"Build examples for libakrypt"
OFF
)
option
(
AK_EXAMPLES
"Build examples for libakrypt"
OFF
)
...
@@ -112,11 +113,11 @@ string( COMPARE EQUAL ${CMAKE_SIZEOF_VOID_P} "4" AK_SIZEOF_VOID_P_IS_4 )
...
@@ -112,11 +113,11 @@ string( COMPARE EQUAL ${CMAKE_SIZEOF_VOID_P} "4" AK_SIZEOF_VOID_P_IS_4 )
string
(
COMPARE EQUAL
${
CMAKE_SIZEOF_VOID_P
}
"8"
AK_SIZEOF_VOID_P_IS_8
)
string
(
COMPARE EQUAL
${
CMAKE_SIZEOF_VOID_P
}
"8"
AK_SIZEOF_VOID_P_IS_8
)
if
(
AK_SIZEOF_VOID_P_IS_4
)
if
(
AK_SIZEOF_VOID_P_IS_4
)
message
(
"--
Using 32-bit architecture"
)
message
(
STATUS
"
Using 32-bit architecture"
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-DAK_SIZEOF_VOID_P_IS_4"
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-DAK_SIZEOF_VOID_P_IS_4"
)
endif
()
endif
()
if
(
AK_SIZEOF_VOID_P_IS_8
)
if
(
AK_SIZEOF_VOID_P_IS_8
)
message
(
"--
Using 64-bit architecture"
)
message
(
STATUS
"
Using 64-bit architecture"
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-DAK_SIZEOF_VOID_P_IS_8"
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-DAK_SIZEOF_VOID_P_IS_8"
)
endif
()
endif
()
...
@@ -133,7 +134,7 @@ include( GNUInstallDirs )
...
@@ -133,7 +134,7 @@ include( GNUInstallDirs )
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
# Вырабатываем заголовочный файл (в каталоге сборки)
# Вырабатываем заголовочный файл (в каталоге сборки)
configure_file
(
${
CMAKE_CURRENT_SOURCE_DIR
}
/source/libakrypt-base.h.in
${
CMAKE_CURRENT_BINARY_DIR
}
/libakrypt-base.h @ONLY
)
configure_file
(
${
CMAKE_CURRENT_SOURCE_DIR
}
/source/libakrypt-base.h.in
${
CMAKE_CURRENT_BINARY_DIR
}
/libakrypt-base.h @ONLY
)
message
(
"--
Generation of libakrypt-base.h is done"
)
message
(
STATUS
"
Generation of libakrypt-base.h is done"
)
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
# Определяем место хранения файла с настройками библиотеки
# Определяем место хранения файла с настройками библиотеки
...
@@ -147,7 +148,7 @@ else()
...
@@ -147,7 +148,7 @@ else()
set
(
AK_CONFIG_PATH
"C:
\\\\
Program Files
\\\\
Akrypt"
)
set
(
AK_CONFIG_PATH
"C:
\\\\
Program Files
\\\\
Akrypt"
)
endif
()
endif
()
endif
()
endif
()
message
(
"--
Path for libakrypt.conf is
${
AK_CONFIG_PATH
}
"
)
message
(
STATUS
"
Path for libakrypt.conf is
${
AK_CONFIG_PATH
}
"
)
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
# Определяем место хранения доверенных сертификатов библиотеки
# Определяем место хранения доверенных сертификатов библиотеки
...
@@ -161,7 +162,7 @@ else()
...
@@ -161,7 +162,7 @@ else()
set
(
AK_CA_PATH
"C:
\\\\
Program Files
\\\\
Akrypt
\\\\
ca-certificates"
)
set
(
AK_CA_PATH
"C:
\\\\
Program Files
\\\\
Akrypt
\\\\
ca-certificates"
)
endif
()
endif
()
endif
()
endif
()
message
(
"--
Path for ca-certificates is
${
AK_CA_PATH
}
"
)
message
(
STATUS
"
Path for ca-certificates is
${
AK_CA_PATH
}
"
)
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
# Определем процедуры сборки библиотек - статической или динамической
# Определем процедуры сборки библиотек - статической или динамической
...
@@ -172,39 +173,61 @@ add_compile_options( -DLIBAKRYPT_VERSION="${FULL_VERSION}" )
...
@@ -172,39 +173,61 @@ add_compile_options( -DLIBAKRYPT_VERSION="${FULL_VERSION}" )
add_compile_options
(
-DLIBAKRYPT_COMPILER_NAME=
"
${
CMAKE_C_COMPILER_ID
}
"
)
add_compile_options
(
-DLIBAKRYPT_COMPILER_NAME=
"
${
CMAKE_C_COMPILER_ID
}
"
)
add_compile_options
(
-DLIBAKRYPT_COMPILER_VERSION=
"
${
CMAKE_C_COMPILER_VERSION
}
"
)
add_compile_options
(
-DLIBAKRYPT_COMPILER_VERSION=
"
${
CMAKE_C_COMPILER_VERSION
}
"
)
add_compile_options
(
-DLIBAKRYPT_CA_PATH=
"
${
AK_CA_PATH
}
"
)
add_compile_options
(
-DLIBAKRYPT_CA_PATH=
"
${
AK_CA_PATH
}
"
)
message
(
"--
Used compile flags
${
CMAKE_C_FLAGS
}
"
)
message
(
STATUS
"
Used compile flags
${
CMAKE_C_FLAGS
}
"
)
if
(
CMAKE_BUILD_TYPE STREQUAL Release
)
if
(
CMAKE_BUILD_TYPE STREQUAL Release
)
message
(
"--
Used release compile flags
${
CMAKE_C_FLAGS_RELEASE
}
"
)
message
(
STATUS
"
Used release compile flags
${
CMAKE_C_FLAGS_RELEASE
}
"
)
endif
()
endif
()
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
# формируем команды для сборки библиотеки
# формируем команды для сборки библиотеки
if
(
AK_BASE
)
message
(
STATUS
"Options AK_BASE is ON"
)
else
()
message
(
STATUS
"Options AK_BASE is OFF"
)
endif
()
if
(
AK_SHARED_LIB
)
if
(
AK_SHARED_LIB
)
add_library
(
akbase-shared SHARED
${
MAIN_HEADERS
}
${
AKBASE_SOURCES
}
if
(
AK_BASE
)
cmake/MakeAktool.cmake
)
add_library
(
akbase-shared SHARED
${
MAIN_HEADERS
}
${
AKBASE_SOURCES
}
)
set_target_properties
(
akbase-shared PROPERTIES VERSION
${
MAJOR_VERSION
}
SOVERSION
${
FULL_VERSION
}
)
set_target_properties
(
akbase-shared PROPERTIES VERSION
${
MAJOR_VERSION
}
SOVERSION
${
FULL_VERSION
}
)
set_target_properties
(
akbase-shared PROPERTIES OUTPUT_NAME akrypt-base CLEAN_DIRECT_CUSTOM 1
)
set_target_properties
(
akbase-shared PROPERTIES OUTPUT_NAME akrypt-base CLEAN_DIRECT_CUSTOM 1
)
target_link_libraries
(
akbase-shared
${
LIBAKRYPT_LIBS
}
)
target_link_libraries
(
akbase-shared
${
LIBAKRYPT_LIBS
}
)
message
(
"-- Building libakrypt-base: shared library"
)
message
(
STATUS
"Building libakrypt-base: shared library"
)
add_library
(
akrypt-shared SHARED
${
MAIN_HEADERS
}
${
AKRYPT_SOURCES
}
)
add_library
(
akrypt-shared SHARED
${
MAIN_HEADERS
}
${
AKRYPT_SOURCES
}
)
set_target_properties
(
akrypt-shared PROPERTIES VERSION
${
MAJOR_VERSION
}
SOVERSION
${
FULL_VERSION
}
)
set_target_properties
(
akrypt-shared PROPERTIES VERSION
${
MAJOR_VERSION
}
SOVERSION
${
FULL_VERSION
}
)
set_target_properties
(
akrypt-shared PROPERTIES OUTPUT_NAME akrypt CLEAN_DIRECT_CUSTOM 1
)
set_target_properties
(
akrypt-shared PROPERTIES OUTPUT_NAME akrypt CLEAN_DIRECT_CUSTOM 1
)
target_link_libraries
(
akrypt-shared akbase-shared
${
LIBAKRYPT_LIBS
}
)
target_link_libraries
(
akrypt-shared akbase-shared
${
LIBAKRYPT_LIBS
}
)
message
(
"-- Building libakrypt: shared library"
)
message
(
STATUS
"Building libakrypt: shared library"
)
else
()
add_library
(
akrypt-shared SHARED
${
MAIN_HEADERS
}
${
AKBASE_SOURCES
}
${
AKRYPT_SOURCES
}
)
set_target_properties
(
akrypt-shared PROPERTIES VERSION
${
MAJOR_VERSION
}
SOVERSION
${
FULL_VERSION
}
)
set_target_properties
(
akrypt-shared PROPERTIES OUTPUT_NAME akrypt CLEAN_DIRECT_CUSTOM 1
)
target_link_libraries
(
akrypt-shared
${
LIBAKRYPT_LIBS
}
)
message
(
STATUS
"Building libakrypt: shared library"
)
endif
()
endif
()
endif
()
#
#
if
(
AK_STATIC_LIB
)
if
(
AK_STATIC_LIB
)
add_library
(
akbase-static STATIC
${
MAIN_HEADERS
}
${
AKBASE_SOURCES
}
)
if
(
AK_BASE
)
set_target_properties
(
akbase-static PROPERTIES OUTPUT_NAME akrypt-base CLEAN_DIRECT_CUSTOM 1
)
add_library
(
akbase-static STATIC
${
MAIN_HEADERS
}
${
AKBASE_SOURCES
}
)
target_link_libraries
(
akbase-static
${
LIBAKRYPT_LIBS
}
)
set_target_properties
(
akbase-static PROPERTIES OUTPUT_NAME akrypt-base CLEAN_DIRECT_CUSTOM 1
)
message
(
"-- Building libakrypt-base: static library"
)
target_link_libraries
(
akbase-static
${
LIBAKRYPT_LIBS
}
)
message
(
STATUS
"Building libakrypt-base: static library"
)
add_library
(
akrypt-static STATIC
${
MAIN_HEADERS
}
${
AKRYPT_SOURCES
}
)
set_target_properties
(
akrypt-static PROPERTIES OUTPUT_NAME akrypt CLEAN_DIRECT_CUSTOM 1
)
add_library
(
akrypt-static STATIC
${
MAIN_HEADERS
}
${
AKRYPT_SOURCES
}
)
target_link_libraries
(
akrypt-static akbase-static
${
LIBAKRYPT_LIBS
}
)
set_target_properties
(
akrypt-static PROPERTIES OUTPUT_NAME akrypt CLEAN_DIRECT_CUSTOM 1
)
message
(
"-- Building libakrypt: static library"
)
target_link_libraries
(
akrypt-static akbase-static
${
LIBAKRYPT_LIBS
}
)
message
(
STATUS
"Building libakrypt: static library"
)
else
()
add_library
(
akrypt-static STATIC
${
MAIN_HEADERS
}
${
AKBASE_SOURCES
}
${
AKRYPT_SOURCES
}
)
set_target_properties
(
akrypt-static PROPERTIES OUTPUT_NAME akrypt CLEAN_DIRECT_CUSTOM 1
)
target_link_libraries
(
akrypt-static
${
LIBAKRYPT_LIBS
}
)
message
(
STATUS
"Building libakrypt: static library"
)
endif
()
endif
()
endif
()
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
...
@@ -233,37 +256,53 @@ set( EXAMPLES_LIST
...
@@ -233,37 +256,53 @@ set( EXAMPLES_LIST
)
)
if
(
AK_EXAMPLES
)
if
(
AK_EXAMPLES
)
message
(
"--
Akbase examples (now
\"
make test
\"
enabled):"
)
message
(
STATUS
"
Akbase examples (now
\"
make test
\"
enabled):"
)
enable_testing
()
enable_testing
()
foreach
(
programm
${
BASE_EXAMPLES_LIST
}
)
foreach
(
programm
${
BASE_EXAMPLES_LIST
}
)
if
(
AK_STATIC_LIB
)
if
(
AK_STATIC_LIB
)
add_executable
(
example-
${
programm
}
examples/akbase/example-
${
programm
}
.c
)
add_executable
(
example-
${
programm
}
examples/akbase/example-
${
programm
}
.c
)
target_link_libraries
(
example-
${
programm
}
akbase-static
${
LIBAKRYPT_LIBS
}
)
if
(
AK_BASE
)
message
(
" example-
${
programm
}
"
)
target_link_libraries
(
example-
${
programm
}
akbase-static
${
LIBAKRYPT_LIBS
}
)
else
()
target_link_libraries
(
example-
${
programm
}
akrypt-static
${
LIBAKRYPT_LIBS
}
)
endif
()
message
(
NOTICE
" example-
${
programm
}
"
)
add_test
(
NAME example-
${
programm
}
COMMAND example-
${
programm
}
)
add_test
(
NAME example-
${
programm
}
COMMAND example-
${
programm
}
)
endif
()
endif
()
if
(
AK_SHARED_LIB
)
if
(
AK_SHARED_LIB
)
add_executable
(
example-shared-
${
programm
}
examples/akbase/example-
${
programm
}
.c
)
add_executable
(
example-shared-
${
programm
}
examples/akbase/example-
${
programm
}
.c
)
target_link_libraries
(
example-shared-
${
programm
}
akbase-shared
${
LIBAKRYPT_LIBS
}
)
if
(
AK_BASE
)
message
(
" example-shared-
${
programm
}
"
)
target_link_libraries
(
example-shared-
${
programm
}
akbase-shared
${
LIBAKRYPT_LIBS
}
)
else
()
target_link_libraries
(
example-shared-
${
programm
}
akrypt-shared
${
LIBAKRYPT_LIBS
}
)
endif
()
message
(
NOTICE
" example-shared-
${
programm
}
"
)
add_test
(
NAME example-shared-
${
programm
}
COMMAND example-shared-
${
programm
}
)
add_test
(
NAME example-shared-
${
programm
}
COMMAND example-shared-
${
programm
}
)
endif
()
endif
()
endforeach
()
endforeach
()
# теперь то же самое, но из другого каталога + дополнительные зависимости
# теперь то же самое, но из другого каталога + дополнительные зависимости
message
(
"--
FAQ examples:"
)
message
(
STATUS
"
FAQ examples:"
)
enable_testing
()
enable_testing
()
foreach
(
programm
${
EXAMPLES_LIST
}
)
foreach
(
programm
${
EXAMPLES_LIST
}
)
if
(
AK_STATIC_LIB
)
if
(
AK_STATIC_LIB
)
add_executable
(
example-
${
programm
}
examples/faq/example-
${
programm
}
.c
)
add_executable
(
example-
${
programm
}
examples/faq/example-
${
programm
}
.c
)
target_link_libraries
(
example-
${
programm
}
akbase-static akrypt-static
${
LIBAKRYPT_LIBS
}
)
if
(
AK_BASE
)
message
(
" example-
${
programm
}
"
)
target_link_libraries
(
example-
${
programm
}
akbase-static akrypt-static
${
LIBAKRYPT_LIBS
}
)
else
()
target_link_libraries
(
example-
${
programm
}
akrypt-static
${
LIBAKRYPT_LIBS
}
)
endif
()
message
(
NOTICE
" example-
${
programm
}
"
)
add_test
(
NAME example-static-
${
programm
}
COMMAND example-
${
programm
}
)
add_test
(
NAME example-static-
${
programm
}
COMMAND example-
${
programm
}
)
endif
()
endif
()
if
(
AK_SHARED_LIB
)
if
(
AK_SHARED_LIB
)
add_executable
(
example-shared-
${
programm
}
examples/faq/example-
${
programm
}
.c
)
add_executable
(
example-shared-
${
programm
}
examples/faq/example-
${
programm
}
.c
)
target_link_libraries
(
example-shared-
${
programm
}
akbase-shared akrypt-shared
${
LIBAKRYPT_LIBS
}
)
if
(
AK_BASE
)
message
(
" example-shared-
${
programm
}
"
)
target_link_libraries
(
example-shared-
${
programm
}
akbase-shared akrypt-shared
${
LIBAKRYPT_LIBS
}
)
else
()
target_link_libraries
(
example-shared-
${
programm
}
akrypt-shared
${
LIBAKRYPT_LIBS
}
)
endif
()
message
(
NOTICE
" example-shared-
${
programm
}
"
)
add_test
(
NAME example-shared-
${
programm
}
COMMAND example-shared-
${
programm
}
)
add_test
(
NAME example-shared-
${
programm
}
COMMAND example-shared-
${
programm
}
)
endif
()
endif
()
endforeach
()
endforeach
()
...
@@ -312,16 +351,24 @@ endif()
...
@@ -312,16 +351,24 @@ endif()
if
(
AK_TESTS
)
if
(
AK_TESTS
)
enable_testing
()
enable_testing
()
message
(
"--
Internal tests (now
\"
make test
\"
enabled):"
)
message
(
STATUS
"
Internal tests (now
\"
make test
\"
enabled):"
)
foreach
(
programm
${
ARITHMETIC_TESTS_LIST
}
)
foreach
(
programm
${
ARITHMETIC_TESTS_LIST
}
)
add_executable
(
test-
${
programm
}
examples/tests/test-
${
programm
}
.c
)
add_executable
(
test-
${
programm
}
examples/tests/test-
${
programm
}
.c
)
if
(
AK_STATIC_LIB
)
if
(
AK_STATIC_LIB
)
target_link_libraries
(
test-
${
programm
}
akrypt-static akbase-static
${
LIBAKRYPT_LIBS
}
)
if
(
AK_BASE
)
target_link_libraries
(
test-
${
programm
}
akrypt-static akbase-static
${
LIBAKRYPT_LIBS
}
)
else
()
target_link_libraries
(
test-
${
programm
}
akrypt-static
${
LIBAKRYPT_LIBS
}
)
endif
()
else
()
else
()
target_link_libraries
(
test-
${
programm
}
akrypt-shared akbase-shared
${
LIBAKRYPT_LIBS
}
)
if
(
AK_BASE
)
target_link_libraries
(
test-
${
programm
}
akrypt-shared akbase-shared
${
LIBAKRYPT_LIBS
}
)
else
()
target_link_libraries
(
test-
${
programm
}
akrypt-shared
${
LIBAKRYPT_LIBS
}
)
endif
()
endif
()
endif
()
add_test
(
NAME test-
${
programm
}
COMMAND test-
${
programm
}
)
add_test
(
NAME test-
${
programm
}
COMMAND test-
${
programm
}
)
message
(
" test-
${
programm
}
"
)
message
(
NOTICE
" test-
${
programm
}
"
)
endforeach
()
endforeach
()
endif
()
endif
()
...
@@ -347,15 +394,19 @@ set( LIBAKRYPT_DOCUMENTATION
...
@@ -347,15 +394,19 @@ set( LIBAKRYPT_DOCUMENTATION
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
# инсталляция библиотеки (только для UNIX)
# инсталляция библиотеки (только для UNIX)
message
(
"--
Install path:"
${
CMAKE_INSTALL_PREFIX
}
)
message
(
STATUS
"
Install path:"
${
CMAKE_INSTALL_PREFIX
}
)
if
(
CMAKE_HOST_UNIX
)
if
(
CMAKE_HOST_UNIX
)
if
(
AK_STATIC_LIB
)
if
(
AK_STATIC_LIB
)
install
(
TARGETS akbase-static LIBRARY DESTINATION lib ARCHIVE DESTINATION lib
)
if
(
AK_BASE
)
install
(
TARGETS akbase-static LIBRARY DESTINATION lib ARCHIVE DESTINATION lib
)
endif
()
install
(
TARGETS akrypt-static LIBRARY DESTINATION lib ARCHIVE DESTINATION lib
)
install
(
TARGETS akrypt-static LIBRARY DESTINATION lib ARCHIVE DESTINATION lib
)
endif
()
endif
()
if
(
AK_SHARED_LIB
)
if
(
AK_SHARED_LIB
)
install
(
TARGETS akbase-shared LIBRARY DESTINATION lib ARCHIVE DESTINATION lib
)
if
(
AK_BASE
)
install
(
TARGETS akbase-shared LIBRARY DESTINATION lib ARCHIVE DESTINATION lib
)
endif
()
install
(
TARGETS akrypt-shared LIBRARY DESTINATION lib ARCHIVE DESTINATION lib
)
install
(
TARGETS akrypt-shared LIBRARY DESTINATION lib ARCHIVE DESTINATION lib
)
endif
()
endif
()
...
...
This diff is collapsed.
Click to expand it.
Changelog.md
+
3
−
1
View file @
096eb54e
...
@@ -3,7 +3,9 @@
...
@@ -3,7 +3,9 @@
## Изменения в версии 0.9.17
## Изменения в версии 0.9.17
-
добавлена опция cmake AK_TOOL
-
добавлены опции cmake
-
AK_TOOL для включения/отключения сборки консольной утилиты
-
AK_BASE для сборки библиотеки в виде одного или двух исполняемых модулей
-
изменения в утилите aktool icode
-
изменения в утилите aktool icode
-
добавлена опция -n, --no-database
-
добавлена опция -n, --no-database
-
добавлены опции --offset, --size для контроля целостности фрагментов файлов
-
добавлены опции --offset, --size для контроля целостности фрагментов файлов
...
...
This diff is collapsed.
Click to expand it.
aktool/aktool.1
+
1
−
1
View file @
096eb54e
...
@@ -28,7 +28,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
...
@@ -28,7 +28,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
..
.TH "AKTOOL" "1" "
окт. 23
, 2024" "версия библиотеки 0.9.1
5
" "libakrypt"
.TH "AKTOOL" "1" "
нояб. 15
, 2024" "версия библиотеки 0.9.1
7
" "libakrypt"
.SH NAME
.SH NAME
aktool \- Правила пользования
aktool \- Правила пользования
.sp
.sp
...
...
This diff is collapsed.
Click to expand it.
cmake/DetectFlags.cmake
+
2
−
0
View file @
096eb54e
...
@@ -35,7 +35,9 @@ if( MSVC )
...
@@ -35,7 +35,9 @@ if( MSVC )
else
()
else
()
# набор Unix'овых флагов
# набор Unix'овых флагов
try_append_c_flag
(
"-Wall"
CMAKE_C_FLAGS
)
try_append_c_flag
(
"-Wall"
CMAKE_C_FLAGS
)
try_append_c_flag
(
"-Wextra"
CMAKE_C_FLAGS
)
try_append_c_flag
(
"-Wparentheses"
CMAKE_C_FLAGS
)
try_append_c_flag
(
"-Wparentheses"
CMAKE_C_FLAGS
)
try_append_c_flag
(
"-Wpedantic"
CMAKE_C_FLAGS
)
try_append_c_flag
(
"-pedantic-errors"
CMAKE_C_FLAGS
)
try_append_c_flag
(
"-pedantic-errors"
CMAKE_C_FLAGS
)
try_append_c_flag
(
"-O3"
CMAKE_C_FLAGS
)
try_append_c_flag
(
"-O3"
CMAKE_C_FLAGS
)
try_append_c_flag
(
"-pipe"
CMAKE_C_FLAGS
)
try_append_c_flag
(
"-pipe"
CMAKE_C_FLAGS
)
...
...
This diff is collapsed.
Click to expand it.
cmake/DetectLibraries.cmake
+
9
−
9
View file @
096eb54e
...
@@ -6,7 +6,7 @@ if( WIN32 )
...
@@ -6,7 +6,7 @@ if( WIN32 )
set
(
AKRYPT_SOURCES
${
AKRYPT_SOURCES
}
${
CMAKE_CURRENT_BINARY_DIR
}
/libakrypt.rc
)
set
(
AKRYPT_SOURCES
${
AKRYPT_SOURCES
}
${
CMAKE_CURRENT_BINARY_DIR
}
/libakrypt.rc
)
set
(
AKBASE_SOURCES
${
AKBASE_SOURCES
}
${
CMAKE_CURRENT_BINARY_DIR
}
/libakrypt-base.rc
)
set
(
AKBASE_SOURCES
${
AKBASE_SOURCES
}
${
CMAKE_CURRENT_BINARY_DIR
}
/libakrypt-base.rc
)
set
(
CMAKE_BUILD_TYPE
"Release"
)
set
(
CMAKE_BUILD_TYPE
"Release"
)
message
(
"--
Generation of
${
CMAKE_CURRENT_BINARY_DIR
}
/libakrypt.rc is done"
)
message
(
STATUS
"
Generation of
${
CMAKE_CURRENT_BINARY_DIR
}
/libakrypt.rc is done"
)
endif
()
endif
()
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
...
@@ -23,11 +23,11 @@ if( AK_TESTS_GMP )
...
@@ -23,11 +23,11 @@ if( AK_TESTS_GMP )
set
(
LIBAKRYPT_LIBS
${
LIBAKRYPT_LIBS
}
gmp
)
set
(
LIBAKRYPT_LIBS
${
LIBAKRYPT_LIBS
}
gmp
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-DAK_HAVE_GMP_H"
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-DAK_HAVE_GMP_H"
)
else
()
else
()
message
(
"--
gmp.h not found"
)
message
(
WARNING
"
gmp.h not found"
)
return
()
return
()
endif
()
endif
()
else
()
else
()
message
(
"--
libgmp or gmp.h not found"
)
message
(
WARNING
"
libgmp or gmp.h not found"
)
set
(
LIBAKRYPT_GMP_TESTS OFF
)
set
(
LIBAKRYPT_GMP_TESTS OFF
)
return
()
return
()
endif
()
endif
()
...
@@ -40,10 +40,10 @@ if( WIN32 )
...
@@ -40,10 +40,10 @@ if( WIN32 )
# ищем реализацию сокетов
# ищем реализацию сокетов
find_library
(
LIBAKRYPT_WS2_32 ws2_32
)
find_library
(
LIBAKRYPT_WS2_32 ws2_32
)
if
(
LIBAKRYPT_WS2_32
)
if
(
LIBAKRYPT_WS2_32
)
message
(
"--
Searching ws2_32 - done "
)
message
(
STATUS
"
Searching ws2_32 - done "
)
set
(
LIBAKRYPT_LIBS ws2_32
)
set
(
LIBAKRYPT_LIBS ws2_32
)
else
()
else
()
message
(
"--
ws2_32 not found"
)
message
(
WARNING
"
ws2_32 not found"
)
return
()
return
()
endif
()
endif
()
endif
()
endif
()
...
@@ -55,7 +55,7 @@ if( MSVC )
...
@@ -55,7 +55,7 @@ if( MSVC )
# в начале ищем библиотеки, если нет - выходим
# в начале ищем библиотеки, если нет - выходим
find_library
(
LIBAKRYPT_PTHREAD pthreadVC2
)
find_library
(
LIBAKRYPT_PTHREAD pthreadVC2
)
if
(
LIBAKRYPT_PTHREAD
)
if
(
LIBAKRYPT_PTHREAD
)
message
(
"--
Searching pthreadVC2 - done "
)
message
(
STATUS
"
Searching pthreadVC2 - done "
)
set
(
LIBAKRYPT_LIBS
${
LIBAKRYPT_LIBS
}
pthreadVC2
)
set
(
LIBAKRYPT_LIBS
${
LIBAKRYPT_LIBS
}
pthreadVC2
)
# потом ищем заголовочный файл, если нет - выходим
# потом ищем заголовочный файл, если нет - выходим
...
@@ -76,11 +76,11 @@ if( MSVC )
...
@@ -76,11 +76,11 @@ if( MSVC )
endif
()
endif
()
else
()
else
()
message
(
"--
pthread.h not found"
)
message
(
WARNING
"
pthread.h not found"
)
return
()
return
()
endif
()
endif
()
else
()
else
()
message
(
"--
pthreadVC2 not found"
)
message
(
WARNING
"
pthreadVC2 not found"
)
return
()
return
()
endif
()
endif
()
else
()
else
()
...
@@ -88,7 +88,7 @@ else()
...
@@ -88,7 +88,7 @@ else()
find_library
(
LIBAKRYPT_PTHREAD pthread
)
find_library
(
LIBAKRYPT_PTHREAD pthread
)
if
(
LIBAKRYPT_PTHREAD
)
if
(
LIBAKRYPT_PTHREAD
)
message
(
"--
Searching pthread - done "
)
message
(
STATUS
"
Searching pthread - done "
)
set
(
LIBAKRYPT_LIBS
${
LIBAKRYPT_LIBS
}
pthread
)
set
(
LIBAKRYPT_LIBS
${
LIBAKRYPT_LIBS
}
pthread
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-DAK_HAVE_PTHREAD_H"
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-DAK_HAVE_PTHREAD_H"
)
endif
()
endif
()
...
...
This diff is collapsed.
Click to expand it.
cmake/MakeAktool.cmake
+
22
−
10
View file @
096eb54e
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
# Copyright (c) 2014 - 202
3
by Axel Kenzo, axelkenzo@mail.ru
# Copyright (c) 2014 - 202
4
by Axel Kenzo, axelkenzo@mail.ru
#
#
# MakeAktool.cmake
# MakeAktool.cmake
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
...
@@ -27,9 +27,9 @@ else()
...
@@ -27,9 +27,9 @@ else()
endif
()
endif
()
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
message
(
"--
Sources for aktool utility:"
)
message
(
STATUS
"
Sources for aktool utility:"
)
foreach
(
filename
${
AKTOOL_SOURCES
}
)
foreach
(
filename
${
AKTOOL_SOURCES
}
)
message
(
"
${
filename
}
"
)
message
(
NOTICE
"
${
filename
}
"
)
endforeach
()
endforeach
()
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
...
@@ -43,7 +43,7 @@ else()
...
@@ -43,7 +43,7 @@ else()
set
(
AK_LOCALE_PATH
"/usr/share/locale"
)
set
(
AK_LOCALE_PATH
"/usr/share/locale"
)
endif
()
endif
()
add_compile_options
(
-DLIBAKRYPT_LOCALE_PATH=
"
${
AK_LOCALE_PATH
}
"
)
add_compile_options
(
-DLIBAKRYPT_LOCALE_PATH=
"
${
AK_LOCALE_PATH
}
"
)
message
(
"--
Locale path is
${
AK_LOCALE_PATH
}
"
)
message
(
STATUS
"
Locale path is
${
AK_LOCALE_PATH
}
"
)
endif
()
endif
()
endif
()
endif
()
...
@@ -57,13 +57,13 @@ macro( try_aktool_lib _lib _header )
...
@@ -57,13 +57,13 @@ macro( try_aktool_lib _lib _header )
find_library
(
LIB
${
_lib
}
_LIB lib
${
_lib
}
.so
)
find_library
(
LIB
${
_lib
}
_LIB lib
${
_lib
}
.so
)
endif
()
endif
()
if
(
LIB
${
_lib
}
_LIB
)
if
(
LIB
${
_lib
}
_LIB
)
message
(
"--
lib
${
_lib
}
found (
${
LIB
${
_lib
}
_LIB
}
)"
)
message
(
STATUS
"
lib
${
_lib
}
found (
${
LIB
${
_lib
}
_LIB
}
)"
)
find_file
(
AK_HAVE_
${
_header
}
_H
${
_header
}
.h
)
find_file
(
AK_HAVE_
${
_header
}
_H
${
_header
}
.h
)
if
(
AK_HAVE_
${
_header
}
_H
)
if
(
AK_HAVE_
${
_header
}
_H
)
message
(
"--
${
_header
}
.h found"
)
message
(
STATUS
"
${
_header
}
.h found"
)
set
(
LIBAKRYPT_LIBS
${
LIBAKRYPT_LIBS
}
${
LIB
${
_lib
}
_LIB
}
)
set
(
LIBAKRYPT_LIBS
${
LIBAKRYPT_LIBS
}
${
LIB
${
_lib
}
_LIB
}
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-D
${
AKTOOL_LIB_HEADER
}
"
)
set
(
CMAKE_C_FLAGS
"
${
CMAKE_C_FLAGS
}
-D
${
AKTOOL_LIB_HEADER
}
"
)
message
(
" a
dded compile flag -D
${
AKTOOL_LIB_HEADER
}
"
)
message
(
STATUS
"A
dded compile flag -D
${
AKTOOL_LIB_HEADER
}
"
)
endif
()
endif
()
endif
()
endif
()
endmacro
(
try_aktool_lib
)
endmacro
(
try_aktool_lib
)
...
@@ -78,16 +78,24 @@ try_aktool_lib( intl libintl )
...
@@ -78,16 +78,24 @@ try_aktool_lib( intl libintl )
try_aktool_lib
(
iconv iconv
)
try_aktool_lib
(
iconv iconv
)
if
(
LIBAKRYPT_LIBS
)
if
(
LIBAKRYPT_LIBS
)
message
(
"--
Additional libraries for aktool is
${
LIBAKRYPT_LIBS
}
"
)
message
(
STATUS
"
Additional libraries for aktool is
${
LIBAKRYPT_LIBS
}
"
)
endif
()
endif
()
add_executable
(
aktool
${
AKTOOL_SOURCES
}
)
add_executable
(
aktool
${
AKTOOL_SOURCES
}
)
target_include_directories
(
aktool PUBLIC
"
${
CMAKE_CURRENT_SOURCE_DIR
}
/aktool"
)
target_include_directories
(
aktool PUBLIC
"
${
CMAKE_CURRENT_SOURCE_DIR
}
/aktool"
)
if
(
AK_STATIC_LIB
)
if
(
AK_STATIC_LIB
)
target_link_libraries
(
aktool akrypt-static akbase-static
${
LIBAKRYPT_LIBS
}
)
if
(
AK_BASE
)
target_link_libraries
(
aktool akrypt-static akbase-static
${
LIBAKRYPT_LIBS
}
)
else
()
target_link_libraries
(
aktool akrypt-static
${
LIBAKRYPT_LIBS
}
)
endif
()
else
()
else
()
target_link_libraries
(
aktool akrypt-shared akbase-shared
${
LIBAKRYPT_LIBS
}
)
if
(
AK_BASE
)
target_link_libraries
(
aktool akrypt-shared akbase-shared
${
LIBAKRYPT_LIBS
}
)
else
()
target_link_libraries
(
aktool akrypt-shared
${
LIBAKRYPT_LIBS
}
)
endif
()
endif
()
endif
()
# -------------------------------------------------------------------------------------------------- #
# -------------------------------------------------------------------------------------------------- #
...
@@ -116,3 +124,7 @@ if( GZIP )
...
@@ -116,3 +124,7 @@ if( GZIP )
else
()
else
()
install
(
FILES
${
CMAKE_CURRENT_SOURCE_DIR
}
/aktool/aktool.1 DESTINATION
${
AK_MAN_PATH
}
)
install
(
FILES
${
CMAKE_CURRENT_SOURCE_DIR
}
/aktool/aktool.1 DESTINATION
${
AK_MAN_PATH
}
)
endif
()
endif
()
# -------------------------------------------------------------------------------------------------- #
# Aktool.cmake #
# -------------------------------------------------------------------------------------------------- #
This diff is collapsed.
Click to expand it.
doc/20-install-guide.rst
+
17
−
0
View file @
096eb54e
...
@@ -420,6 +420,23 @@ Cтабильная версия библиотеки распространяе
...
@@ -420,6 +420,23 @@ Cтабильная версия библиотеки распространяе
cmake -L ../libakrypt-0.x
cmake -L ../libakrypt-0.x
AK_BASE
~~~~~~~
Опция `AK_BASE` определяется в `CMakeLists.txt` следующим образом::
option( AK_BASE "Build two separate libraries - libkrypt and libakrypt-base" OFF )
Опция `AK_BASE` устанавливает должна ли библиотека собираться в виде одного или двух исполняемых
(объектных) файлов. Если опция включена (значение `ON`), то при сборке сознаются два файла
libakrypt-base.so(.a) и libakrypt.so(.a), первый из которых содержит реализацию
вспомогательных преобразований, а второй только криптографические преобразования.
*Принимаемые значения*: `ON`, `OFF`.
*Значение по-умолчанию*: `OFF`.
AK_CA_PATH
AK_CA_PATH
~~~~~~~~~~
~~~~~~~~~~
...
...
This diff is collapsed.
Click to expand it.
examples/tests/test-mpzn-password.c
+
1
−
1
View file @
096eb54e
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#include
<gmp.h>
#include
<gmp.h>
#include
<libakrypt.h>
#include
<libakrypt.h>
const
static
ak_uint8
prime
[
32
]
=
{
static
const
ak_uint8
prime
[
32
]
=
{
67
,
71
,
73
,
79
,
83
,
89
,
97
,
101
,
103
,
107
,
109
,
113
,
127
,
131
,
139
,
149
,
67
,
71
,
73
,
79
,
83
,
89
,
97
,
101
,
103
,
107
,
109
,
113
,
127
,
131
,
139
,
149
,
151
,
157
,
163
,
167
,
173
,
179
,
181
,
191
,
193
,
197
,
199
,
211
,
223
,
227
,
229
,
233
151
,
157
,
163
,
167
,
173
,
179
,
181
,
191
,
193
,
197
,
199
,
211
,
223
,
227
,
229
,
233
};
};
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment
Menu
Explore
Projects
Groups
Topics
Snippets