From 1c8c9a902352b6947616999da275f8a58c4dd686 Mon Sep 17 00:00:00 2001 From: Hendrik Leidinger Date: Wed, 4 Feb 2026 16:07:37 -0800 Subject: [PATCH 01/11] feat: make artifact copy modular for dev environment Signed-off-by: Hendrik Leidinger --- CMakeLists.txt | 47 +---------------------------------------------- common.cmake | 2 +- 2 files changed, 2 insertions(+), 47 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7477033d2d..10851d1acd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -15,6 +15,7 @@ if(EMSCRIPTEN) add_subdirectory( "${CORE_ROOT_DIR}/Common/3dParty/hunspell" spell ) add_subdirectory( "${CORE_ROOT_DIR}/DesktopEditor/fontengine/js" fonts ) add_subdirectory( "${CORE_ROOT_DIR}/DesktopEditor/graphics/pro/js/" drawingfile ) + else() add_compile_options(-march=native) @@ -26,50 +27,4 @@ else() add_subdirectory( "${CORE_ROOT_DIR}/DesktopEditor/doctrenderer/app_builder" docbuilder ) add_subdirectory( "${CORE_ROOT_DIR}/PdfFile/Resources/CMapMemory" cmapbin ) - #[[ - set( ALL_ARTIFACTS - UnicodeConverter - kernel - kernel_network - Fb2File - PdfFile - HtmlFile2 - EpubFile - XpsFile - OFDFile - DjVuFile - DocxRenderer - doctrenderer - IWorkFile - HWPFile - graphics - x2tlib - allfontsgen - allthemesgen - pluginsmanager - docbuilder - x2t - ) - - add_custom_target(copy_artifacts ALL - COMMENT "Copying all artifacts into ${EO_CORE_OUTPUT_DIR}" - ) - - add_dependencies(copy_artifacts ${ALL_ARTIFACTS}) - - foreach(artifact ${ALL_ARTIFACTS}) - add_custom_command(TARGET copy_artifacts POST_BUILD - COMMAND ${CMAKE_COMMAND} -E make_directory "${EO_CORE_OUTPUT_DIR}" - COMMAND ${CMAKE_COMMAND} -E copy $ "${EO_CORE_OUTPUT_DIR}/" - COMMENT "Copying ${artifact} to ${EO_CORE_OUTPUT_DIR}" - ) - endforeach() - - add_custom_command(TARGET copy_artifacts POST_BUILD - COMMAND ${CMAKE_COMMAND} -E make_directory "${EO_CORE_OUTPUT_DIR}" - COMMAND /bin/sh -c "cp -P \"${EO_CORE_3RD_PARTY_INSTALL_DIR}/icu/lib\"/*.so* \"${EO_CORE_OUTPUT_DIR}/\"" - COMMENT "Copying ICU libs to ${EO_CORE_OUTPUT_DIR}" - ) - ]] - endif() diff --git a/common.cmake b/common.cmake index 2d46bd303e..5970fae3f7 100644 --- a/common.cmake +++ b/common.cmake @@ -135,7 +135,7 @@ endfunction() function(copy_icu_libs artifact) add_custom_command(TARGET ${artifact} POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory "${EO_CORE_OUTPUT_DIR}" - COMMAND /bin/sh -c "cp -P --update=none \"${EO_CORE_3RD_PARTY_INSTALL_DIR}/icu/lib\"/*.so* \"${EO_CORE_OUTPUT_DIR}/\"" + COMMAND /bin/sh -c "cp -P \"${EO_CORE_3RD_PARTY_INSTALL_DIR}/icu/lib\"/*.so* \"${EO_CORE_OUTPUT_DIR}/\"" COMMENT "Copying ICU libs to ${EO_CORE_OUTPUT_DIR}" ) endfunction() \ No newline at end of file From 614159c23581221276396c8267ac22b82b798ebc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20Bari?= Date: Fri, 6 Feb 2026 15:19:43 +0100 Subject: [PATCH 02/11] chore: Upgraded openssl to latest MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tamás Bari --- Common/3dParty/openssl/nc-build.sh | 9 ++++++++- Common/Network/CMakeLists.txt | 4 ++-- DesktopEditor/doctrenderer/CMakeLists.txt | 4 ++-- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/Common/3dParty/openssl/nc-build.sh b/Common/3dParty/openssl/nc-build.sh index c28d1cd43d..70eb53e7e7 100755 --- a/Common/3dParty/openssl/nc-build.sh +++ b/Common/3dParty/openssl/nc-build.sh @@ -33,8 +33,15 @@ fi mkdir -p "$work_dir" || abort_op "Failed to create work dir: [$work_dir]" echo "Fetching OpenSSL repo into: [$work_dir]" -git clone --depth=1 --branch OpenSSL_1_1_1f https://github.com/openssl/openssl.git "$work_dir" \ +git clone --depth 1 --branch openssl-3.6.1 https://github.com/openssl/openssl.git "$work_dir" \ || abort_op "Git clone failed!" +cd "$work_dir" + +# git clone https://github.com/openssl/openssl.git "$work_dir" \ +# || abort_op "Git clone failed!" +# cd "$work_dir" +# git fetch --tags +# git switch --detach openssl-3.6.1 echo "Building OpenSSL" cd "$work_dir" diff --git a/Common/Network/CMakeLists.txt b/Common/Network/CMakeLists.txt index 899e7f274c..7709343618 100644 --- a/Common/Network/CMakeLists.txt +++ b/Common/Network/CMakeLists.txt @@ -114,8 +114,8 @@ target_include_directories(kernel_network PRIVATE ) target_link_libraries(kernel_network PRIVATE - ${OPENSSL_INSTALL_DIR_ABS}/lib/libssl.a - ${OPENSSL_INSTALL_DIR_ABS}/lib/libcrypto.a + ${OPENSSL_INSTALL_DIR_ABS}/lib64/libssl.a + ${OPENSSL_INSTALL_DIR_ABS}/lib64/libcrypto.a ) target_link_libraries(kernel_network PUBLIC diff --git a/DesktopEditor/doctrenderer/CMakeLists.txt b/DesktopEditor/doctrenderer/CMakeLists.txt index 6cee7fd322..473f8c0c6d 100644 --- a/DesktopEditor/doctrenderer/CMakeLists.txt +++ b/DesktopEditor/doctrenderer/CMakeLists.txt @@ -292,8 +292,8 @@ if(APPLE) endif() target_link_libraries(doctrenderer PRIVATE - ${OPENSSL_INSTALL_DIR_ABS}/lib/libssl.a - ${OPENSSL_INSTALL_DIR_ABS}/lib/libcrypto.a + ${OPENSSL_INSTALL_DIR_ABS}/lib64/libssl.a + ${OPENSSL_INSTALL_DIR_ABS}/lib64/libcrypto.a ) target_link_libraries(doctrenderer PUBLIC From f7d178daefd137b6a10b85febc9482ea0fe4cc4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20Bari?= Date: Fri, 6 Feb 2026 15:21:08 +0100 Subject: [PATCH 03/11] feature: doctest prototype for openssl test MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tamás Bari --- CMakeLists.txt | 9 +++ Common/3dParty/openssl/test/CMakeLists.txt | 71 ++++++++++++++++++++++ Common/3dParty/openssl/test/main.cpp | 36 ++++++----- common.cmake | 19 +++++- 4 files changed, 118 insertions(+), 17 deletions(-) create mode 100644 Common/3dParty/openssl/test/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 10851d1acd..140e92a6a1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,6 +4,9 @@ project(core) set(CORE_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}") +add_custom_target(tests) +get_property(all_tests GLOBAL PROPERTY TEST_TARGETS) + include(${CORE_ROOT_DIR}/common.cmake) # platform-specific compile flags @@ -28,3 +31,9 @@ else() add_subdirectory( "${CORE_ROOT_DIR}/PdfFile/Resources/CMapMemory" cmapbin ) endif() + +add_subdirectory( "${CORE_ROOT_DIR}/Common/3dParty/openssl/test" ) + +if(all_tests) + add_dependencies(tests ${all_tests}) +endif() diff --git a/Common/3dParty/openssl/test/CMakeLists.txt b/Common/3dParty/openssl/test/CMakeLists.txt new file mode 100644 index 0000000000..bcd07cb559 --- /dev/null +++ b/Common/3dParty/openssl/test/CMakeLists.txt @@ -0,0 +1,71 @@ +cmake_minimum_required(VERSION 3.10) + +project(openssl_test) + +set(CORE_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../..") +set(OPENSSL_COMMON_SRC_DIR "${CMAKE_CURRENT_LIST_DIR}/../common") + +include(${CORE_ROOT_DIR}/common.cmake) + +if(NOT TARGET kernel) + add_subdirectory(${CORE_ROOT_DIR}/Common kernel) +endif() + +message( "Fetch and build OpenSSL" ) +set(OPENSSL_3RDPARTY_DIR "${CORE_ROOT_DIR}/Common/3dParty/openssl") +set(OPENSSL_INSTALL_DIR "${EO_CORE_3RD_PARTY_INSTALL_DIR}/openssl_build_linux_64") +get_filename_component(OPENSSL_3RDPARTY_DIR_ABS "${OPENSSL_3RDPARTY_DIR}" ABSOLUTE) +get_filename_component(OPENSSL_INSTALL_DIR_ABS "${OPENSSL_INSTALL_DIR}" ABSOLUTE) +execute_process( + COMMAND_ECHO STDOUT + COMMAND ./nc-build.sh "${EO_CORE_3RD_PARTY_WORK_DIR}/openssl" "${OPENSSL_INSTALL_DIR}" + WORKING_DIRECTORY ${OPENSSL_3RDPARTY_DIR_ABS} +) + + +add_executable(openssl_test + ${OPENSSL_COMMON_SRC_DIR}/common_openssl.cpp + ${CMAKE_CURRENT_LIST_DIR}/main.cpp + + ${OPENSSL_COMMON_SRC_DIR}/common_openssl.h +) + +set_default_options(openssl_test) + +target_include_directories(openssl_test PRIVATE + ${OPENSSL_INSTALL_DIR}/include +) + +target_link_libraries(openssl_test PRIVATE + ${OPENSSL_INSTALL_DIR_ABS}/lib64/libssl.a + ${OPENSSL_INSTALL_DIR_ABS}/lib64/libcrypto.a +) + +target_link_libraries(openssl_test PUBLIC + kernel +) + +copy_icu_libs(openssl_test) + + + +target_link_libraries(openssl_test PRIVATE doctest::doctest) + +# Modify rpath so test binary can run properly +get_target_property(old_rpath openssl_test BUILD_RPATH) +if(old_rpath) + set(new_rpath "${old_rpath}:${EO_CORE_OUTPUT_DIR}") +else() + set(new_rpath "${EO_CORE_OUTPUT_DIR}") +endif() +set_target_properties(openssl_test PROPERTIES + BUILD_RPATH "${new_rpath}" + INSTALL_RPATH "${new_rpath}" +) + +register_test_target(openssl_tests) + +include(${doctest_SOURCE_DIR}/scripts/cmake/doctest.cmake) +doctest_discover_tests(openssl_test + TEST_PREFIX "openssl." +) diff --git a/Common/3dParty/openssl/test/main.cpp b/Common/3dParty/openssl/test/main.cpp index 3c9c663dab..a295c18471 100644 --- a/Common/3dParty/openssl/test/main.cpp +++ b/Common/3dParty/openssl/test/main.cpp @@ -30,27 +30,33 @@ * */ +#define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN +#include + +#include + #include "./../common/common_openssl.h" -int main(int argc, char *argv[]) +TEST_SUITE( "OpenSSL" ) { - argc; - argv; - if (true) + TEST_CASE( "SHA-256" ) { std::string sTestHashString = "knoejnrgijwenrgiojwnergjiwnerigjnwerojgnweorigjn"; unsigned int data_len = 0; unsigned char* data = NSOpenSSL::GetHash((unsigned char*)sTestHashString.c_str(), (unsigned int)sTestHashString.length(), OPENSSL_HASH_ALG_SHA256, data_len); std::string sResult = NSOpenSSL::Serialize(data, data_len, OPENSSL_SERIALIZE_TYPE_HEX); + NSOpenSSL::openssl_free(data); + + const std::string sExpectedResult = "913DD5544D5C726A40D551ACE85B29ABBBD4E2ADF2F4DA5BD07CEC07680CF5CD"; + CHECK( sResult == sExpectedResult ); } - if (true) + TEST_CASE( "RSA" ) { unsigned char* publicKey = NULL; unsigned char* privateKey = NULL; bool bRes = NSOpenSSL::RSA_GenerateKeys(publicKey, privateKey); - bRes; std::string sPublic((char*)publicKey); std::string sPrivate((char*)privateKey); @@ -58,37 +64,35 @@ int main(int argc, char *argv[]) NSOpenSSL::openssl_free(publicKey); NSOpenSSL::openssl_free(privateKey); - std::string sMessage = "Hello world"; + const std::string sMessage = "Hello world"; unsigned char* message_crypt = NULL; unsigned int message_crypt_len = 0; - bool bEncrypt = NSOpenSSL::RSA_EncryptPublic((unsigned char*)sPublic.c_str(), (unsigned char*)sMessage.c_str(), (unsigned int)sMessage.length(), message_crypt, message_crypt_len); - bEncrypt; + bool bEncrypt = NSOpenSSL::RSA_EncryptPublic((unsigned char*)sPublic.c_str(), (const unsigned char*)sMessage.c_str(), (unsigned int)sMessage.length(), message_crypt, message_crypt_len); unsigned char* message_decrypt = NULL; unsigned int message_decrypt_len = 0; bool bDecrypt = NSOpenSSL::RSA_DecryptPrivate((unsigned char*)sPrivate.c_str(), message_crypt, message_crypt_len, message_decrypt, message_decrypt_len); - bDecrypt; std::string sMessageOut((char*)message_decrypt, message_decrypt_len); NSOpenSSL::openssl_free(message_crypt); NSOpenSSL::openssl_free(message_decrypt); + + CHECK( sMessageOut == sMessage ); } - if (true) + TEST_CASE( "AES" ) { - std::string password = "{PASSWORD}"; - std::string message = "{MESSAGE}"; + const std::string password = "{PASSWORD}"; + const std::string message = "{MESSAGE}"; std::string message_crypted = ""; std::string message_decrypted = ""; NSOpenSSL::AES_Encrypt_desktop(password, message, message_crypted); NSOpenSSL::AES_Decrypt_desktop(password, message_crypted, message_decrypted); - message; + CHECK( message_decrypted == message ); } - - return 0; } diff --git a/common.cmake b/common.cmake index 5970fae3f7..a213ebf165 100644 --- a/common.cmake +++ b/common.cmake @@ -138,4 +138,21 @@ function(copy_icu_libs artifact) COMMAND /bin/sh -c "cp -P \"${EO_CORE_3RD_PARTY_INSTALL_DIR}/icu/lib\"/*.so* \"${EO_CORE_OUTPUT_DIR}/\"" COMMENT "Copying ICU libs to ${EO_CORE_OUTPUT_DIR}" ) -endfunction() \ No newline at end of file +endfunction() + +include(FetchContent) +FetchContent_Declare( + doctest + GIT_REPOSITORY https://github.com/doctest/doctest.git + GIT_TAG v2.4.11 +) +FetchContent_MakeAvailable(doctest) + +enable_testing() + +set_property(GLOBAL PROPERTY TEST_TARGETS "") + +# Helper function to add test targets +function(register_test_target tgt) + set_property(GLOBAL APPEND PROPERTY TEST_TARGETS ${tgt}) +endfunction() From 95e6199560bbea9a8fbe4dfed72c92a03cdffb71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20Bari?= Date: Wed, 25 Feb 2026 15:36:43 +0100 Subject: [PATCH 04/11] fix: Removing stray comment MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tamás Bari --- Common/3dParty/openssl/nc-build.sh | 6 ------ 1 file changed, 6 deletions(-) diff --git a/Common/3dParty/openssl/nc-build.sh b/Common/3dParty/openssl/nc-build.sh index 70eb53e7e7..1d5abb8887 100755 --- a/Common/3dParty/openssl/nc-build.sh +++ b/Common/3dParty/openssl/nc-build.sh @@ -37,12 +37,6 @@ git clone --depth 1 --branch openssl-3.6.1 https://github.com/openssl/openssl.gi || abort_op "Git clone failed!" cd "$work_dir" -# git clone https://github.com/openssl/openssl.git "$work_dir" \ -# || abort_op "Git clone failed!" -# cd "$work_dir" -# git fetch --tags -# git switch --detach openssl-3.6.1 - echo "Building OpenSSL" cd "$work_dir" ./config enable-md2 no-shared no-asm --prefix=$install_dir --openssldir=$install_dir \ From ffbfb15d435807c1d4ad1d4950397c97e1da527b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20Bari?= Date: Thu, 26 Feb 2026 10:30:38 +0100 Subject: [PATCH 05/11] fix: disabling afalgeng in openssl (for wasm build) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tamás Bari --- Common/3dParty/openssl/nc-build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Common/3dParty/openssl/nc-build.sh b/Common/3dParty/openssl/nc-build.sh index 1d5abb8887..aaecba697e 100755 --- a/Common/3dParty/openssl/nc-build.sh +++ b/Common/3dParty/openssl/nc-build.sh @@ -39,7 +39,7 @@ cd "$work_dir" echo "Building OpenSSL" cd "$work_dir" -./config enable-md2 no-shared no-asm --prefix=$install_dir --openssldir=$install_dir \ +./config enable-md2 no-shared no-asm no-afalgeng --prefix=$install_dir --openssldir=$install_dir \ || abort_op "Configuration failed!" make -j10 || abort_op "Build failed!" From b25e5ea0ca0e7523e466c10c4b377b9399f4816b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20Bari?= Date: Fri, 27 Feb 2026 17:28:33 +0100 Subject: [PATCH 06/11] fix: Fixing wasm build with new openssl MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tamás Bari --- CMakeLists.txt | 9 ++++---- Common/3dParty/icu/nc-build.sh | 8 ++----- Common/3dParty/openssl/nc-build.sh | 15 ++++++++++--- DesktopEditor/graphics/pro/js/CMakeLists.txt | 8 ++----- .../js/wasm/patches/fix-wasm-openssl.patch | 22 +++++++++---------- 5 files changed, 32 insertions(+), 30 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 140e92a6a1..7494600392 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -30,10 +30,11 @@ else() add_subdirectory( "${CORE_ROOT_DIR}/DesktopEditor/doctrenderer/app_builder" docbuilder ) add_subdirectory( "${CORE_ROOT_DIR}/PdfFile/Resources/CMapMemory" cmapbin ) -endif() + add_subdirectory( "${CORE_ROOT_DIR}/Common/3dParty/openssl/test" ) -add_subdirectory( "${CORE_ROOT_DIR}/Common/3dParty/openssl/test" ) + if(all_tests) + add_dependencies(tests ${all_tests}) + endif() -if(all_tests) - add_dependencies(tests ${all_tests}) endif() + diff --git a/Common/3dParty/icu/nc-build.sh b/Common/3dParty/icu/nc-build.sh index 4b94edb305..6912bf679a 100755 --- a/Common/3dParty/icu/nc-build.sh +++ b/Common/3dParty/icu/nc-build.sh @@ -4,7 +4,6 @@ work_dir="$1" install_dir="$2" icu_major=$3 icu_minor=$4 -fetch_only=${5:-0} abort_op() { @@ -57,11 +56,8 @@ CXXFLAGS="-static-libstdc++ -static-libgcc" \ LDFLAGS='-Wl,-rpath,$$ORIGIN' \ || abort_op "Configure failed" -if [ "$fetch_only" -eq 0 ]; then - make -j10 && make install || abort_op "Build failed" +make -j10 && make install || abort_op "Build failed" - echo "ICU ready! (work dir will be removed)" - rm -rf "$work_dir" -fi +echo "ICU ready!" exit 0 diff --git a/Common/3dParty/openssl/nc-build.sh b/Common/3dParty/openssl/nc-build.sh index aaecba697e..ff97dcb99f 100755 --- a/Common/3dParty/openssl/nc-build.sh +++ b/Common/3dParty/openssl/nc-build.sh @@ -2,8 +2,11 @@ work_dir="$1" install_dir="$2" -keep_work=${3:-0} +keep_work=${3:-""} +script_dir="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")" +patches_dir="$script_dir/../../../DesktopEditor/graphics/pro/js/wasm/patches" +# DesktopEditor/graphics/pro/js/wasm/patches/fix-wasm-openssl.patch abort_op() { rm -rf "$work_dir" @@ -35,7 +38,10 @@ mkdir -p "$work_dir" || abort_op "Failed to create work dir: [$work_dir]" echo "Fetching OpenSSL repo into: [$work_dir]" git clone --depth 1 --branch openssl-3.6.1 https://github.com/openssl/openssl.git "$work_dir" \ || abort_op "Git clone failed!" + +echo "Patching OpenSSL" cd "$work_dir" +git apply "$patches_dir/fix-wasm-openssl.patch" || abort_op "Failed to apply fix-wasm-openssl.patch" echo "Building OpenSSL" cd "$work_dir" @@ -47,9 +53,12 @@ make -j10 || abort_op "Build failed!" echo "Installing OpenSSL to: [$install_dir]" make install || abort_op "Install failed!" -if [ "$keep_work" -eq 0 ]; then - echo "OpenSSL ready! (work dir will be removed)" +echo "OpenSSL ready!" + +if [ "$keep_work" == "dont_keep_workdir" ]; then + echo "Work dir will be removed." rm -rf "$work_dir" fi exit 0 + diff --git a/DesktopEditor/graphics/pro/js/CMakeLists.txt b/DesktopEditor/graphics/pro/js/CMakeLists.txt index 777be06aa4..3d94a33768 100644 --- a/DesktopEditor/graphics/pro/js/CMakeLists.txt +++ b/DesktopEditor/graphics/pro/js/CMakeLists.txt @@ -27,19 +27,15 @@ add_custom_command( COMMAND bash ${CORE_ROOT}/Common/3dParty/icu/nc-build.sh "${EO_CORE_3RD_PARTY_WORK_DIR}/icu" "${EO_CORE_3RD_PARTY_INSTALL_DIR}/icu" - 74 2 1 + 74 2 COMMAND bash ${CORE_ROOT}/Common/3dParty/openssl/nc-build.sh "${EO_CORE_3RD_PARTY_WORK_DIR}/openssl" "${EO_CORE_3RD_PARTY_INSTALL_DIR}/openssl" - 1 COMMAND git -C ${EO_CORE_3RD_PARTY_WORK_DIR}/icu/icu apply ${CMAKE_CURRENT_SOURCE_DIR}/wasm/patches/fix-wasm-icu.patch - COMMAND git -C ${EO_CORE_3RD_PARTY_WORK_DIR}/openssl apply - ${CMAKE_CURRENT_SOURCE_DIR}/wasm/patches/fix-wasm-openssl.patch - COMMAND ${CMAKE_COMMAND} -E touch ${PATCH_STAMP} ) @@ -949,7 +945,7 @@ _ARM_ALIGN_ _tcsnicmp=strncmp _lseek=lseek _getcwd=getcwd NO_CONSOLE_IO USE_EXTERNAL_JPEG2000 USE_JPIP OPJ_STATIC FONT_ENGINE_DISABLE_FILESYSTEM IMAGE_CHECKER_DISABLE_XML -USE_OPENSSL_HASH DISABLE_FULL_DOCUMENT_CREATION DISABLE_FILESYSTEM +DISABLE_FULL_DOCUMENT_CREATION DISABLE_FILESYSTEM CRYPTOPP_DISABLE_ASM DISABLE_TYPE_MISMATCH ) diff --git a/DesktopEditor/graphics/pro/js/wasm/patches/fix-wasm-openssl.patch b/DesktopEditor/graphics/pro/js/wasm/patches/fix-wasm-openssl.patch index 616ed49619..24c8d53d1a 100644 --- a/DesktopEditor/graphics/pro/js/wasm/patches/fix-wasm-openssl.patch +++ b/DesktopEditor/graphics/pro/js/wasm/patches/fix-wasm-openssl.patch @@ -1,31 +1,31 @@ diff --git a/crypto/sha/sha512.c b/crypto/sha/sha512.c -index ca1f387a..099e80a5 100644 +index 4c3a3b6..f1a44f5 100644 --- a/crypto/sha/sha512.c +++ b/crypto/sha/sha512.c -@@ -501,7 +501,7 @@ static SHA_LONG64 __fastcall __pull64be(const void *x) +@@ -583,7 +583,7 @@ static SHA_LONG64 __fastcall __pull64be(const void *x) { static void sha512_block_data_order(SHA512_CTX *ctx, const void *in, - size_t num) + size_t num) { - const SHA_LONG64 *W = in; -+ const SHA_LONG64 *W = (const SHA_LONG64*)in; ++ const SHA_LONG64 *W = (const SHA_LONG64 *)in; SHA_LONG64 A, E, T; SHA_LONG64 X[9 + 80], *F; int i; -@@ -563,7 +563,7 @@ static void sha512_block_data_order(SHA512_CTX *ctx, const void *in, +@@ -645,7 +645,7 @@ static void sha512_block_data_order(SHA512_CTX *ctx, const void *in, static void sha512_block_data_order(SHA512_CTX *ctx, const void *in, - size_t num) + size_t num) { - const SHA_LONG64 *W = in; -+ const SHA_LONG64 *W = (const SHA_LONG64*)in; ++ const SHA_LONG64 *W = (const SHA_LONG64 *)in; SHA_LONG64 a, b, c, d, e, f, g, h, s0, s1, T1, T2; SHA_LONG64 X[16]; int i; -@@ -644,7 +644,7 @@ static void sha512_block_data_order(SHA512_CTX *ctx, const void *in, - static void sha512_block_data_order(SHA512_CTX *ctx, const void *in, - size_t num) +@@ -737,7 +737,7 @@ static void sha512_block_data_order(SHA512_CTX *ctx, const void *in, + size_t num) + #endif { - const SHA_LONG64 *W = in; -+ const SHA_LONG64 *W = (const SHA_LONG64*)in; ++ const SHA_LONG64 *W = (const SHA_LONG64 *)in; SHA_LONG64 a, b, c, d, e, f, g, h, s0, s1, T1; SHA_LONG64 X[16]; int i; From 202176822091aa216332b8794a544e65bcb2d730 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20Bari?= Date: Tue, 3 Mar 2026 14:27:42 +0100 Subject: [PATCH 07/11] chore: conflict resolutin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tamás Bari --- CMakeLists.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7494600392..b321a4160e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,7 +9,6 @@ get_property(all_tests GLOBAL PROPERTY TEST_TARGETS) include(${CORE_ROOT_DIR}/common.cmake) -# platform-specific compile flags if(EMSCRIPTEN) add_subdirectory( "${CORE_ROOT_DIR}/OfficeUtils/js" zlib ) @@ -37,4 +36,3 @@ else() endif() endif() - From 63de3287d934ddeee983bf0a1223f871daa948e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20Bari?= Date: Fri, 13 Feb 2026 14:44:24 +0100 Subject: [PATCH 08/11] chore: Updating Brotli to 1.2.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tamás Bari --- Common/3dParty/brotli/nc-fetch.sh | 9 +++------ DesktopEditor/graphics/cmake/CMakeLists.txt | 4 ++-- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/Common/3dParty/brotli/nc-fetch.sh b/Common/3dParty/brotli/nc-fetch.sh index de32637760..afc94fff71 100755 --- a/Common/3dParty/brotli/nc-fetch.sh +++ b/Common/3dParty/brotli/nc-fetch.sh @@ -1,6 +1,7 @@ #!/bin/bash install_dir="$1" +git_tag="v1.2.0" abort_op() { @@ -25,11 +26,7 @@ fi echo "Fetching Brotli" -mkdir -p "$install_dir" || abort_op "Failed to create brotli directory." -cd "$install_dir" -git init || abort_op "Git init failed (brotli)" -git remote add origin https://github.com/google/brotli.git || abort_op "Failed to add brotli remote" -git fetch --depth 1 origin a47d7475063eb223c87632eed806c0070e70da29 || abort_op "Failed to fetch a47d7475063eb223c87632eed806c0070e70da29" -git checkout FETCH_HEAD || abort_op "Check-out failed (brotli)" +git clone --depth=1 --branch $git_tag https://github.com/google/brotli.git "$install_dir" \ + || abort_op "Failed to clone brotli repo" echo "Brotli ready!" diff --git a/DesktopEditor/graphics/cmake/CMakeLists.txt b/DesktopEditor/graphics/cmake/CMakeLists.txt index c90f24fa65..42d68034fa 100644 --- a/DesktopEditor/graphics/cmake/CMakeLists.txt +++ b/DesktopEditor/graphics/cmake/CMakeLists.txt @@ -995,9 +995,9 @@ add_library(graphics SHARED ${BROTLI_INSTALL_DIR}/c/dec/bit_reader.c ${BROTLI_INSTALL_DIR}/c/dec/decode.c ${BROTLI_INSTALL_DIR}/c/dec/huffman.c - # ${BROTLI_INSTALL_DIR}/c/dec/prefix.c + ${BROTLI_INSTALL_DIR}/c/dec/prefix.c ${BROTLI_INSTALL_DIR}/c/dec/state.c - # ${BROTLI_INSTALL_DIR}/c/dec/static_init.c + ${BROTLI_INSTALL_DIR}/c/dec/static_init.c ) set_default_options(graphics) From 270ec75b0d35dd7bcc54592ad9dea85c5c1d9a43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20Bari?= Date: Wed, 4 Mar 2026 13:00:37 +0100 Subject: [PATCH 09/11] fix: Fix wasm build for new brotli MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tamás Bari --- DesktopEditor/fontengine/js/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/DesktopEditor/fontengine/js/CMakeLists.txt b/DesktopEditor/fontengine/js/CMakeLists.txt index eb723f0db4..84699dff09 100644 --- a/DesktopEditor/fontengine/js/CMakeLists.txt +++ b/DesktopEditor/fontengine/js/CMakeLists.txt @@ -43,7 +43,9 @@ set(SOURCES ${EO_CORE_3RD_PARTY_WORK_DIR}/brotli/c/dec/bit_reader.c ${EO_CORE_3RD_PARTY_WORK_DIR}/brotli/c/dec/decode.c ${EO_CORE_3RD_PARTY_WORK_DIR}/brotli/c/dec/huffman.c + ${EO_CORE_3RD_PARTY_WORK_DIR}/brotli/c/dec/prefix.c ${EO_CORE_3RD_PARTY_WORK_DIR}/brotli/c/dec/state.c + ${EO_CORE_3RD_PARTY_WORK_DIR}/brotli/c/dec/static_init.c ${DESKTOP_ROOT}/freetype-2.10.4/src/base/ftdebug.c ${DESKTOP_ROOT}/freetype-2.10.4/src/autofit/autofit.c From 7453f4d858e0288dbd89ffaf22db0433ce00bd62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20Bari?= Date: Wed, 4 Mar 2026 16:53:13 +0100 Subject: [PATCH 10/11] feat: Upgrade crpytopp and convert it into a proper 3rdparty lib MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tamás Bari --- Common/3dParty/cryptopp/nc-fetch.sh | 57 +++ .../3dParty/cryptopp/project/CMakeLists.txt | 395 +----------------- DesktopEditor/graphics/pro/js/CMakeLists.txt | 183 ++++---- OfficeCryptReader/source/CryptTransform.cpp | 32 +- PdfFile/CMakeLists.txt | 2 +- 5 files changed, 187 insertions(+), 482 deletions(-) create mode 100755 Common/3dParty/cryptopp/nc-fetch.sh diff --git a/Common/3dParty/cryptopp/nc-fetch.sh b/Common/3dParty/cryptopp/nc-fetch.sh new file mode 100755 index 0000000000..fb215d363f --- /dev/null +++ b/Common/3dParty/cryptopp/nc-fetch.sh @@ -0,0 +1,57 @@ +#!/bin/bash + +work_dir="$1" +install_dir="$2" +keep_work=${3:-""} + +package_name="CryptoPP" +repo_url="https://github.com/weidai11/cryptopp" +git_tag="CRYPTOPP_8_9_0" + +abort_op() +{ + rm -rf "$work_dir" + rm -rf "$install_dir" + echo "$package_name aborted: $1" >&2 + exit 1 +} + +if [ $# -lt 2 ] +then + echo "Needs 2 arguments: work_dir_path install_dir_path" >&2 + exit 1 +fi + +if [ -d $install_dir ] +then + echo "Skipping $package_name (done already)." + exit 0 +else + mkdir -p "$install_dir" || abort_op "Failed to create install dir: [$install_dir]" +fi + +if [ -d "$work_dir" ] +then + rm -rf $work_dir +fi +mkdir -p "$work_dir" || abort_op "Failed to create work dir: [$work_dir]" + +echo "Fetching $package_name" +git clone --depth=1 --branch $git_tag $repo_url "$work_dir" \ + || abort_op "Failed to clone $package_name repo" + +echo "Building $package_name" +cd "$work_dir" +make -j10 || abort_op "Build failed!" + +echo "Installing $package_name to [$install_dir]" +make install-lib PREFIX="$install_dir" || abort_op "Install failed!" + +echo "$package_name ready!" +if [ "$keep_work" != "keep-work-dir" ] +then + echo "(work dir will be removed)" + rm -rf "$work_dir" +fi + +exit 0 diff --git a/Common/3dParty/cryptopp/project/CMakeLists.txt b/Common/3dParty/cryptopp/project/CMakeLists.txt index 6ed82b1e98..b84caf0053 100644 --- a/Common/3dParty/cryptopp/project/CMakeLists.txt +++ b/Common/3dParty/cryptopp/project/CMakeLists.txt @@ -6,386 +6,21 @@ set(CORE_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../..") include(${CORE_ROOT_DIR}/common.cmake) -set(CRYPTOPP_SOURCES_DIR "${CMAKE_CURRENT_LIST_DIR}/..") +message( "Fetch and build CryptoPP" ) +set(CRYPTOPP_3RDPARTY_DIR "${CORE_ROOT_DIR}/Common/3dParty/cryptopp") +set(CRYPTOPP_INSTALL_DIR "${EO_CORE_3RD_PARTY_INSTALL_DIR}/cryptopp") +get_filename_component(CRYPTOPP_3RDPARTY_DIR_ABS "${CRYPTOPP_3RDPARTY_DIR}" ABSOLUTE) +get_filename_component(CRYPTOPP_INSTALL_DIR_ABS "${CRYPTOPP_INSTALL_DIR}" ABSOLUTE) +execute_process( + COMMAND_ECHO STDOUT + COMMAND ./nc-fetch.sh "${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp" "${CRYPTOPP_INSTALL_DIR_ABS}" + WORKING_DIRECTORY "${CRYPTOPP_3RDPARTY_DIR_ABS}" +) add_library(CryptoPPLib STATIC - # List cryptlib.cpp first, then cpu.cpp, then integer.cpp to tame C++ static initialization problems. - # Is this still valid? ${CORE_ROOT_DIR}/OfficeCryptReader/source/CryptTransform.cpp ${CORE_ROOT_DIR}/OfficeCryptReader/source/ECMACryptFile.cpp - ${CRYPTOPP_SOURCES_DIR}/3way.cpp - ${CRYPTOPP_SOURCES_DIR}/adler32.cpp - ${CRYPTOPP_SOURCES_DIR}/algebra.cpp - ${CRYPTOPP_SOURCES_DIR}/algparam.cpp - ${CRYPTOPP_SOURCES_DIR}/allocate.cpp - ${CRYPTOPP_SOURCES_DIR}/arc4.cpp - ${CRYPTOPP_SOURCES_DIR}/aria_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/aria.cpp - ${CRYPTOPP_SOURCES_DIR}/ariatab.cpp - ${CRYPTOPP_SOURCES_DIR}/asn.cpp - ${CRYPTOPP_SOURCES_DIR}/authenc.cpp - ${CRYPTOPP_SOURCES_DIR}/base32.cpp - ${CRYPTOPP_SOURCES_DIR}/base64.cpp - ${CRYPTOPP_SOURCES_DIR}/basecode.cpp - ${CRYPTOPP_SOURCES_DIR}/bfinit.cpp - ${CRYPTOPP_SOURCES_DIR}/blake2.cpp - ${CRYPTOPP_SOURCES_DIR}/blake2b_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/blake2s_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/blowfish.cpp - ${CRYPTOPP_SOURCES_DIR}/blumshub.cpp - ${CRYPTOPP_SOURCES_DIR}/camellia.cpp - ${CRYPTOPP_SOURCES_DIR}/cast.cpp - ${CRYPTOPP_SOURCES_DIR}/casts.cpp - ${CRYPTOPP_SOURCES_DIR}/cbcmac.cpp - ${CRYPTOPP_SOURCES_DIR}/ccm.cpp - ${CRYPTOPP_SOURCES_DIR}/chacha_avx.cpp - ${CRYPTOPP_SOURCES_DIR}/chacha_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/chacha.cpp - ${CRYPTOPP_SOURCES_DIR}/chachapoly.cpp - ${CRYPTOPP_SOURCES_DIR}/cham_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/cham.cpp - ${CRYPTOPP_SOURCES_DIR}/channels.cpp - ${CRYPTOPP_SOURCES_DIR}/cmac.cpp - ${CRYPTOPP_SOURCES_DIR}/cpu.cpp - ${CRYPTOPP_SOURCES_DIR}/crc_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/crc.cpp - ${CRYPTOPP_SOURCES_DIR}/cryptlib.cpp - ${CRYPTOPP_SOURCES_DIR}/darn.cpp - ${CRYPTOPP_SOURCES_DIR}/default.cpp - ${CRYPTOPP_SOURCES_DIR}/des.cpp - ${CRYPTOPP_SOURCES_DIR}/dessp.cpp - ${CRYPTOPP_SOURCES_DIR}/dh.cpp - ${CRYPTOPP_SOURCES_DIR}/dh2.cpp - ${CRYPTOPP_SOURCES_DIR}/dll.cpp - ${CRYPTOPP_SOURCES_DIR}/donna_32.cpp - ${CRYPTOPP_SOURCES_DIR}/donna_64.cpp - ${CRYPTOPP_SOURCES_DIR}/donna_sse.cpp - ${CRYPTOPP_SOURCES_DIR}/dsa.cpp - ${CRYPTOPP_SOURCES_DIR}/eax.cpp - ${CRYPTOPP_SOURCES_DIR}/ec2n.cpp - ${CRYPTOPP_SOURCES_DIR}/eccrypto.cpp - ${CRYPTOPP_SOURCES_DIR}/ecp.cpp - ${CRYPTOPP_SOURCES_DIR}/elgamal.cpp - ${CRYPTOPP_SOURCES_DIR}/emsa2.cpp - ${CRYPTOPP_SOURCES_DIR}/eprecomp.cpp - ${CRYPTOPP_SOURCES_DIR}/eprecomp.cpp - ${CRYPTOPP_SOURCES_DIR}/esign.cpp - ${CRYPTOPP_SOURCES_DIR}/files.cpp - ${CRYPTOPP_SOURCES_DIR}/filters.cpp - ${CRYPTOPP_SOURCES_DIR}/fips140.cpp - ${CRYPTOPP_SOURCES_DIR}/gcm_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/gcm.cpp - ${CRYPTOPP_SOURCES_DIR}/gf2_32.cpp - ${CRYPTOPP_SOURCES_DIR}/gf256.cpp - ${CRYPTOPP_SOURCES_DIR}/gf2n_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/gf2n.cpp - ${CRYPTOPP_SOURCES_DIR}/gfpcrypt.cpp - ${CRYPTOPP_SOURCES_DIR}/gost.cpp - ${CRYPTOPP_SOURCES_DIR}/gzip.cpp - ${CRYPTOPP_SOURCES_DIR}/hc128.cpp - ${CRYPTOPP_SOURCES_DIR}/hc256.cpp - ${CRYPTOPP_SOURCES_DIR}/hex.cpp - ${CRYPTOPP_SOURCES_DIR}/hight.cpp - ${CRYPTOPP_SOURCES_DIR}/hmac.cpp - ${CRYPTOPP_SOURCES_DIR}/hrtimer.cpp - ${CRYPTOPP_SOURCES_DIR}/ida.cpp - ${CRYPTOPP_SOURCES_DIR}/idea.cpp - ${CRYPTOPP_SOURCES_DIR}/integer.cpp - ${CRYPTOPP_SOURCES_DIR}/iterhash.cpp - ${CRYPTOPP_SOURCES_DIR}/kalyna.cpp - ${CRYPTOPP_SOURCES_DIR}/kalynatab.cpp - ${CRYPTOPP_SOURCES_DIR}/keccak_core.cpp - ${CRYPTOPP_SOURCES_DIR}/keccak_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/keccak.cpp - ${CRYPTOPP_SOURCES_DIR}/lea_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/lea.cpp - ${CRYPTOPP_SOURCES_DIR}/lsh256_avx.cpp - ${CRYPTOPP_SOURCES_DIR}/lsh256_sse.cpp - ${CRYPTOPP_SOURCES_DIR}/lsh256.cpp - ${CRYPTOPP_SOURCES_DIR}/lsh512_avx.cpp - ${CRYPTOPP_SOURCES_DIR}/lsh512_sse.cpp - ${CRYPTOPP_SOURCES_DIR}/lsh512.cpp - ${CRYPTOPP_SOURCES_DIR}/luc.cpp - ${CRYPTOPP_SOURCES_DIR}/mars.cpp - ${CRYPTOPP_SOURCES_DIR}/marss.cpp - ${CRYPTOPP_SOURCES_DIR}/md2.cpp - ${CRYPTOPP_SOURCES_DIR}/md4.cpp - ${CRYPTOPP_SOURCES_DIR}/md5.cpp - ${CRYPTOPP_SOURCES_DIR}/misc.cpp - ${CRYPTOPP_SOURCES_DIR}/modes.cpp - ${CRYPTOPP_SOURCES_DIR}/mqueue.cpp - ${CRYPTOPP_SOURCES_DIR}/mqv.cpp - ${CRYPTOPP_SOURCES_DIR}/nbtheory.cpp - ${CRYPTOPP_SOURCES_DIR}/neon_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/oaep.cpp - ${CRYPTOPP_SOURCES_DIR}/osrng.cpp - ${CRYPTOPP_SOURCES_DIR}/padlkrng.cpp - ${CRYPTOPP_SOURCES_DIR}/panama.cpp - ${CRYPTOPP_SOURCES_DIR}/pch.cpp - ${CRYPTOPP_SOURCES_DIR}/pkcspad.cpp - ${CRYPTOPP_SOURCES_DIR}/poly1305.cpp - ${CRYPTOPP_SOURCES_DIR}/polynomi.cpp - ${CRYPTOPP_SOURCES_DIR}/power7_ppc.cpp - ${CRYPTOPP_SOURCES_DIR}/power8_ppc.cpp - ${CRYPTOPP_SOURCES_DIR}/power9_ppc.cpp - ${CRYPTOPP_SOURCES_DIR}/ppc_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/pssr.cpp - ${CRYPTOPP_SOURCES_DIR}/pubkey.cpp - ${CRYPTOPP_SOURCES_DIR}/queue.cpp - ${CRYPTOPP_SOURCES_DIR}/rabbit.cpp - ${CRYPTOPP_SOURCES_DIR}/rabin.cpp - ${CRYPTOPP_SOURCES_DIR}/randpool.cpp - ${CRYPTOPP_SOURCES_DIR}/rc2.cpp - ${CRYPTOPP_SOURCES_DIR}/rc5.cpp - ${CRYPTOPP_SOURCES_DIR}/rc6.cpp - ${CRYPTOPP_SOURCES_DIR}/rdrand.cpp - ${CRYPTOPP_SOURCES_DIR}/rdtables.cpp - ${CRYPTOPP_SOURCES_DIR}/rijndael_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/rijndael.cpp - ${CRYPTOPP_SOURCES_DIR}/ripemd.cpp - ${CRYPTOPP_SOURCES_DIR}/rng.cpp - ${CRYPTOPP_SOURCES_DIR}/rsa.cpp - ${CRYPTOPP_SOURCES_DIR}/rw.cpp - ${CRYPTOPP_SOURCES_DIR}/safer.cpp - ${CRYPTOPP_SOURCES_DIR}/salsa.cpp - ${CRYPTOPP_SOURCES_DIR}/scrypt.cpp - ${CRYPTOPP_SOURCES_DIR}/seal.cpp - ${CRYPTOPP_SOURCES_DIR}/seed.cpp - ${CRYPTOPP_SOURCES_DIR}/serpent.cpp - ${CRYPTOPP_SOURCES_DIR}/sha_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/sha.cpp - ${CRYPTOPP_SOURCES_DIR}/sha3.cpp - ${CRYPTOPP_SOURCES_DIR}/shacal2_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/shacal2.cpp - ${CRYPTOPP_SOURCES_DIR}/shake.cpp - ${CRYPTOPP_SOURCES_DIR}/shark.cpp - ${CRYPTOPP_SOURCES_DIR}/sharkbox.cpp - ${CRYPTOPP_SOURCES_DIR}/simeck.cpp - ${CRYPTOPP_SOURCES_DIR}/simon.cpp - ${CRYPTOPP_SOURCES_DIR}/simon128_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/simple.cpp - ${CRYPTOPP_SOURCES_DIR}/skipjack.cpp - ${CRYPTOPP_SOURCES_DIR}/sm3.cpp - ${CRYPTOPP_SOURCES_DIR}/sm4_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/sm4.cpp - ${CRYPTOPP_SOURCES_DIR}/sosemanuk.cpp - ${CRYPTOPP_SOURCES_DIR}/speck.cpp - ${CRYPTOPP_SOURCES_DIR}/speck128_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/square.cpp - ${CRYPTOPP_SOURCES_DIR}/squaretb.cpp - ${CRYPTOPP_SOURCES_DIR}/sse_simd.cpp - ${CRYPTOPP_SOURCES_DIR}/strciphr.cpp - ${CRYPTOPP_SOURCES_DIR}/tea.cpp - ${CRYPTOPP_SOURCES_DIR}/tftables.cpp - ${CRYPTOPP_SOURCES_DIR}/threefish.cpp - ${CRYPTOPP_SOURCES_DIR}/tiger.cpp - ${CRYPTOPP_SOURCES_DIR}/tigertab.cpp - ${CRYPTOPP_SOURCES_DIR}/ttmac.cpp - ${CRYPTOPP_SOURCES_DIR}/tweetnacl.cpp - ${CRYPTOPP_SOURCES_DIR}/twofish.cpp - ${CRYPTOPP_SOURCES_DIR}/vmac.cpp - ${CRYPTOPP_SOURCES_DIR}/wake.cpp - ${CRYPTOPP_SOURCES_DIR}/whrlpool.cpp - ${CRYPTOPP_SOURCES_DIR}/xed25519.cpp - ${CRYPTOPP_SOURCES_DIR}/xtr.cpp - ${CRYPTOPP_SOURCES_DIR}/xtrcrypt.cpp - ${CRYPTOPP_SOURCES_DIR}/xts.cpp - ${CRYPTOPP_SOURCES_DIR}/zdeflate.cpp - ${CRYPTOPP_SOURCES_DIR}/zinflate.cpp - ${CRYPTOPP_SOURCES_DIR}/zlib.cpp - - ${CRYPTOPP_SOURCES_DIR}/3way.h - ${CRYPTOPP_SOURCES_DIR}/adler32.h - ${CRYPTOPP_SOURCES_DIR}/adv_simd.h - ${CRYPTOPP_SOURCES_DIR}/aes.h - ${CRYPTOPP_SOURCES_DIR}/aes_armv4.h - ${CRYPTOPP_SOURCES_DIR}/algebra.h - ${CRYPTOPP_SOURCES_DIR}/algparam.h - ${CRYPTOPP_SOURCES_DIR}/allocate.h - ${CRYPTOPP_SOURCES_DIR}/arc4.h - ${CRYPTOPP_SOURCES_DIR}/aria.h - ${CRYPTOPP_SOURCES_DIR}/argnames.h - ${CRYPTOPP_SOURCES_DIR}/arm_simd.h - ${CRYPTOPP_SOURCES_DIR}/asn.h - ${CRYPTOPP_SOURCES_DIR}/authenc.h - ${CRYPTOPP_SOURCES_DIR}/base32.h - ${CRYPTOPP_SOURCES_DIR}/base64.h - ${CRYPTOPP_SOURCES_DIR}/basecode.h - ${CRYPTOPP_SOURCES_DIR}/bench.h - ${CRYPTOPP_SOURCES_DIR}/blake2.h - ${CRYPTOPP_SOURCES_DIR}/blowfish.h - ${CRYPTOPP_SOURCES_DIR}/blumshub.h - ${CRYPTOPP_SOURCES_DIR}/camellia.h - ${CRYPTOPP_SOURCES_DIR}/cast.h - ${CRYPTOPP_SOURCES_DIR}/cbcmac.h - ${CRYPTOPP_SOURCES_DIR}/ccm.h - ${CRYPTOPP_SOURCES_DIR}/chacha.h - ${CRYPTOPP_SOURCES_DIR}/chachapoly.h - ${CRYPTOPP_SOURCES_DIR}/cham.h - ${CRYPTOPP_SOURCES_DIR}/channels.h - ${CRYPTOPP_SOURCES_DIR}/cmac.h - ${CRYPTOPP_SOURCES_DIR}/config.h - ${CRYPTOPP_SOURCES_DIR}/config_align.h - ${CRYPTOPP_SOURCES_DIR}/config_asm.h - ${CRYPTOPP_SOURCES_DIR}/config_cpu.h - ${CRYPTOPP_SOURCES_DIR}/config_cxx.h - ${CRYPTOPP_SOURCES_DIR}/config_dll.h - ${CRYPTOPP_SOURCES_DIR}/config_int.h - ${CRYPTOPP_SOURCES_DIR}/config_misc.h - ${CRYPTOPP_SOURCES_DIR}/config_ns.h - ${CRYPTOPP_SOURCES_DIR}/config_os.h - ${CRYPTOPP_SOURCES_DIR}/config_ver.h - ${CRYPTOPP_SOURCES_DIR}/cpu.h - ${CRYPTOPP_SOURCES_DIR}/crc.h - ${CRYPTOPP_SOURCES_DIR}/cryptlib.h - ${CRYPTOPP_SOURCES_DIR}/darn.h - ${CRYPTOPP_SOURCES_DIR}/default.h - ${CRYPTOPP_SOURCES_DIR}/des.h - ${CRYPTOPP_SOURCES_DIR}/dh.h - ${CRYPTOPP_SOURCES_DIR}/dh2.h - ${CRYPTOPP_SOURCES_DIR}/dll.h - ${CRYPTOPP_SOURCES_DIR}/dmac.h - ${CRYPTOPP_SOURCES_DIR}/drbg.h - ${CRYPTOPP_SOURCES_DIR}/donna.h - ${CRYPTOPP_SOURCES_DIR}/donna_32.h - ${CRYPTOPP_SOURCES_DIR}/donna_64.h - ${CRYPTOPP_SOURCES_DIR}/donna_sse.h - ${CRYPTOPP_SOURCES_DIR}/dsa.h - ${CRYPTOPP_SOURCES_DIR}/eax.h - ${CRYPTOPP_SOURCES_DIR}/ec2n.h - ${CRYPTOPP_SOURCES_DIR}/eccrypto.h - ${CRYPTOPP_SOURCES_DIR}/ecp.h - ${CRYPTOPP_SOURCES_DIR}/ecpoint.h - ${CRYPTOPP_SOURCES_DIR}/elgamal.h - ${CRYPTOPP_SOURCES_DIR}/emsa2.h - ${CRYPTOPP_SOURCES_DIR}/eprecomp.h - ${CRYPTOPP_SOURCES_DIR}/esign.h - ${CRYPTOPP_SOURCES_DIR}/factory.h - ${CRYPTOPP_SOURCES_DIR}/files.h - ${CRYPTOPP_SOURCES_DIR}/filters.h - ${CRYPTOPP_SOURCES_DIR}/fips140.h - ${CRYPTOPP_SOURCES_DIR}/fhmqv.h - ${CRYPTOPP_SOURCES_DIR}/fltrimpl.h - ${CRYPTOPP_SOURCES_DIR}/gcm.h - ${CRYPTOPP_SOURCES_DIR}/gf256.h - ${CRYPTOPP_SOURCES_DIR}/gf2_32.h - ${CRYPTOPP_SOURCES_DIR}/gf2n.h - ${CRYPTOPP_SOURCES_DIR}/gfpcrypt.h - ${CRYPTOPP_SOURCES_DIR}/gost.h - ${CRYPTOPP_SOURCES_DIR}/gzip.h - ${CRYPTOPP_SOURCES_DIR}/hashfwd.h - ${CRYPTOPP_SOURCES_DIR}/hc128.h - ${CRYPTOPP_SOURCES_DIR}/hc256.h - ${CRYPTOPP_SOURCES_DIR}/hex.h - ${CRYPTOPP_SOURCES_DIR}/hight.h - ${CRYPTOPP_SOURCES_DIR}/hkdf.h - ${CRYPTOPP_SOURCES_DIR}/hmac.h - ${CRYPTOPP_SOURCES_DIR}/hmqv.h - ${CRYPTOPP_SOURCES_DIR}/hrtimer.h - ${CRYPTOPP_SOURCES_DIR}/ida.h - ${CRYPTOPP_SOURCES_DIR}/idea.h - ${CRYPTOPP_SOURCES_DIR}/integer.h - ${CRYPTOPP_SOURCES_DIR}/iterhash.h - ${CRYPTOPP_SOURCES_DIR}/kalyna.h - ${CRYPTOPP_SOURCES_DIR}/keccak.h - ${CRYPTOPP_SOURCES_DIR}/lubyrack.h - ${CRYPTOPP_SOURCES_DIR}/lea.h - ${CRYPTOPP_SOURCES_DIR}/lsh.h - ${CRYPTOPP_SOURCES_DIR}/luc.h - ${CRYPTOPP_SOURCES_DIR}/mars.h - ${CRYPTOPP_SOURCES_DIR}/md2.h - ${CRYPTOPP_SOURCES_DIR}/md4.h - ${CRYPTOPP_SOURCES_DIR}/md5.h - ${CRYPTOPP_SOURCES_DIR}/mdc.h - ${CRYPTOPP_SOURCES_DIR}/mersenne.h - ${CRYPTOPP_SOURCES_DIR}/misc.h - ${CRYPTOPP_SOURCES_DIR}/modarith.h - ${CRYPTOPP_SOURCES_DIR}/modes.h - ${CRYPTOPP_SOURCES_DIR}/modexppc.h - ${CRYPTOPP_SOURCES_DIR}/mqueue.h - ${CRYPTOPP_SOURCES_DIR}/mqv.h - ${CRYPTOPP_SOURCES_DIR}/naclite.h - ${CRYPTOPP_SOURCES_DIR}/nbtheory.h - ${CRYPTOPP_SOURCES_DIR}/nr.h - ${CRYPTOPP_SOURCES_DIR}/oaep.h - ${CRYPTOPP_SOURCES_DIR}/oids.h - ${CRYPTOPP_SOURCES_DIR}/osrng.h - ${CRYPTOPP_SOURCES_DIR}/ossig.h - ${CRYPTOPP_SOURCES_DIR}/padlkrng.h - ${CRYPTOPP_SOURCES_DIR}/panama.h - ${CRYPTOPP_SOURCES_DIR}/pch.h - ${CRYPTOPP_SOURCES_DIR}/pkcspad.h - ${CRYPTOPP_SOURCES_DIR}/poly1305.h - ${CRYPTOPP_SOURCES_DIR}/polynomi.h - ${CRYPTOPP_SOURCES_DIR}/ppc_simd.h - ${CRYPTOPP_SOURCES_DIR}/pssr.h - ${CRYPTOPP_SOURCES_DIR}/pubkey.h - ${CRYPTOPP_SOURCES_DIR}/pwdbased.h - ${CRYPTOPP_SOURCES_DIR}/queue.h - ${CRYPTOPP_SOURCES_DIR}/rabin.h - ${CRYPTOPP_SOURCES_DIR}/randpool.h - ${CRYPTOPP_SOURCES_DIR}/rabbit.h - ${CRYPTOPP_SOURCES_DIR}/rc2.h - ${CRYPTOPP_SOURCES_DIR}/rc5.h - ${CRYPTOPP_SOURCES_DIR}/rc6.h - ${CRYPTOPP_SOURCES_DIR}/rdrand.h - ${CRYPTOPP_SOURCES_DIR}/resource.h - ${CRYPTOPP_SOURCES_DIR}/rijndael.h - ${CRYPTOPP_SOURCES_DIR}/ripemd.h - ${CRYPTOPP_SOURCES_DIR}/rng.h - ${CRYPTOPP_SOURCES_DIR}/rsa.h - ${CRYPTOPP_SOURCES_DIR}/rw.h - ${CRYPTOPP_SOURCES_DIR}/safer.h - ${CRYPTOPP_SOURCES_DIR}/salsa.h - ${CRYPTOPP_SOURCES_DIR}/scrypt.h - ${CRYPTOPP_SOURCES_DIR}/seal.h - ${CRYPTOPP_SOURCES_DIR}/secblock.h - ${CRYPTOPP_SOURCES_DIR}/secblockfwd.h - ${CRYPTOPP_SOURCES_DIR}/seckey.h - ${CRYPTOPP_SOURCES_DIR}/seed.h - ${CRYPTOPP_SOURCES_DIR}/serpent.h - ${CRYPTOPP_SOURCES_DIR}/serpentp.h - ${CRYPTOPP_SOURCES_DIR}/sha.h - ${CRYPTOPP_SOURCES_DIR}/sha1_armv4.h - ${CRYPTOPP_SOURCES_DIR}/sha256_armv4.h - ${CRYPTOPP_SOURCES_DIR}/sha3.h - ${CRYPTOPP_SOURCES_DIR}/sha512_armv4.h - ${CRYPTOPP_SOURCES_DIR}/shacal2.h - ${CRYPTOPP_SOURCES_DIR}/shake.h - ${CRYPTOPP_SOURCES_DIR}/shark.h - ${CRYPTOPP_SOURCES_DIR}/simple.h - ${CRYPTOPP_SOURCES_DIR}/simeck.h - ${CRYPTOPP_SOURCES_DIR}/simon.h - ${CRYPTOPP_SOURCES_DIR}/siphash.h - ${CRYPTOPP_SOURCES_DIR}/skipjack.h - ${CRYPTOPP_SOURCES_DIR}/sm3.h - ${CRYPTOPP_SOURCES_DIR}/sm4.h - ${CRYPTOPP_SOURCES_DIR}/smartptr.h - ${CRYPTOPP_SOURCES_DIR}/sosemanuk.h - ${CRYPTOPP_SOURCES_DIR}/speck.h - ${CRYPTOPP_SOURCES_DIR}/square.h - ${CRYPTOPP_SOURCES_DIR}/stdcpp.h - ${CRYPTOPP_SOURCES_DIR}/strciphr.h - ${CRYPTOPP_SOURCES_DIR}/tea.h - ${CRYPTOPP_SOURCES_DIR}/threefish.h - ${CRYPTOPP_SOURCES_DIR}/tiger.h - ${CRYPTOPP_SOURCES_DIR}/trap.h - ${CRYPTOPP_SOURCES_DIR}/trunhash.h - ${CRYPTOPP_SOURCES_DIR}/ttmac.h - ${CRYPTOPP_SOURCES_DIR}/tweetnacl.h - ${CRYPTOPP_SOURCES_DIR}/twofish.h - ${CRYPTOPP_SOURCES_DIR}/validate.h - ${CRYPTOPP_SOURCES_DIR}/vmac.h - ${CRYPTOPP_SOURCES_DIR}/wake.h - ${CRYPTOPP_SOURCES_DIR}/whrlpool.h - ${CRYPTOPP_SOURCES_DIR}/words.h - ${CRYPTOPP_SOURCES_DIR}/xed25519.h - ${CRYPTOPP_SOURCES_DIR}/xtr.h - ${CRYPTOPP_SOURCES_DIR}/xtrcrypt.h - ${CRYPTOPP_SOURCES_DIR}/xts.h - ${CRYPTOPP_SOURCES_DIR}/zdeflate.h - ${CRYPTOPP_SOURCES_DIR}/zinflate.h - ${CRYPTOPP_SOURCES_DIR}/zlib.h + ${CORE_ROOT_DIR}/OfficeCryptReader/source/ECMACryptFile.h ${CORE_ROOT_DIR}/OfficeCryptReader/source/CryptTransform.h ) @@ -404,3 +39,11 @@ if(LINUX) -UNDEBUG ) endif() + +target_include_directories(CryptoPPLib PRIVATE + ${CRYPTOPP_INSTALL_DIR_ABS}/include +) + +target_link_libraries(CryptoPPLib PRIVATE + ${CRYPTOPP_INSTALL_DIR_ABS}/lib/libcryptopp.a +) diff --git a/DesktopEditor/graphics/pro/js/CMakeLists.txt b/DesktopEditor/graphics/pro/js/CMakeLists.txt index 3d94a33768..6342145956 100644 --- a/DesktopEditor/graphics/pro/js/CMakeLists.txt +++ b/DesktopEditor/graphics/pro/js/CMakeLists.txt @@ -36,6 +36,11 @@ add_custom_command( COMMAND git -C ${EO_CORE_3RD_PARTY_WORK_DIR}/icu/icu apply ${CMAKE_CURRENT_SOURCE_DIR}/wasm/patches/fix-wasm-icu.patch + COMMAND bash ${CORE_ROOT}/Common/3dParty/cryptopp/nc-fetch.sh + "${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp" + "${EO_CORE_3RD_PARTY_INSTALL_DIR}/cryptopp" + "keep-work-dir" + COMMAND ${CMAKE_COMMAND} -E touch ${PATCH_STAMP} ) @@ -389,95 +394,95 @@ set(SOURCES ${DESKTOP_ROOT}/common/StringUTF32.cpp ${DESKTOP_ROOT}/common/StringBuilder.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/cryptlib.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/cpu.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/integer.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/3way.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/adler32.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/algebra.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/algparam.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/allocate.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/arc4.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/aria.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/aria_simd.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/ariatab.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/asn.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/authenc.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/base32.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/base64.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/basecode.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/bfinit.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/blake2.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/blake2s_simd.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/blake2b_simd.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/blowfish.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/blumshub.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/camellia.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/cast.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/casts.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/cbcmac.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/ccm.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/chacha.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/chacha_simd.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/chacha_avx.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/chachapoly.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/cham.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/cham_simd.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/channels.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/cmac.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/crc.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/crc_simd.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/darn.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/default.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/des.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/dessp.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/dh.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/dh2.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/dll.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/donna_32.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/donna_64.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/donna_sse.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/dsa.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/eax.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/ec2n.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/ecp.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/eccrypto.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/eprecomp.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/elgamal.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/emsa2.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/esign.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/files.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/filters.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/fips140.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/gcm.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/gcm_simd.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/gf256.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/gf2_32.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/gf2n.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/gf2n_simd.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/gfpcrypt.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/gost.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/gzip.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/hc128.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/hc256.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/hex.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/hight.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/hmac.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/hrtimer.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/ida.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/idea.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/iterhash.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/kalyna.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/md5.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/randpool.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/osrng.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/rijndael.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/modes.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/misc.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/rdtables.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/sha.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/mqueue.cpp - ${CORE_ROOT}/Common/3dParty/cryptopp/queue.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/cryptlib.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/cpu.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/integer.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/3way.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/adler32.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/algebra.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/algparam.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/allocate.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/arc4.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/aria.cpp + # ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/aria_simd.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/ariatab.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/asn.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/authenc.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/base32.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/base64.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/basecode.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/bfinit.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/blake2.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/blake2s_simd.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/blake2b_simd.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/blowfish.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/blumshub.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/camellia.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/cast.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/casts.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/cbcmac.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/ccm.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/chacha.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/chacha_simd.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/chacha_avx.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/chachapoly.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/cham.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/cham_simd.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/channels.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/cmac.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/crc.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/crc_simd.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/darn.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/default.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/des.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/dessp.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/dh.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/dh2.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/dll.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/donna_32.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/donna_64.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/donna_sse.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/dsa.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/eax.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/ec2n.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/ecp.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/eccrypto.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/eprecomp.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/elgamal.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/emsa2.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/esign.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/files.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/filters.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/fips140.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/gcm.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/gcm_simd.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/gf256.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/gf2_32.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/gf2n.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/gf2n_simd.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/gfpcrypt.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/gost.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/gzip.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/hc128.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/hc256.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/hex.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/hight.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/hmac.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/hrtimer.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/ida.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/idea.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/iterhash.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/kalyna.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/md5.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/randpool.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/osrng.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/rijndael.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/modes.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/misc.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/rdtables.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/sha.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/mqueue.cpp + ${EO_CORE_3RD_PARTY_WORK_DIR}/cryptopp/queue.cpp ${CORE_ROOT}/OfficeUtils/src/OfficeUtils.cpp ${CORE_ROOT}/OfficeUtils/src/ZipBuffer.cpp diff --git a/OfficeCryptReader/source/CryptTransform.cpp b/OfficeCryptReader/source/CryptTransform.cpp index f822ef48bc..53a20a6f76 100644 --- a/OfficeCryptReader/source/CryptTransform.cpp +++ b/OfficeCryptReader/source/CryptTransform.cpp @@ -36,22 +36,22 @@ #include "CryptTransform.h" -#include "../../Common/3dParty/cryptopp/modes.h" -#include "../../Common/3dParty/cryptopp/aes.h" -#include "../../Common/3dParty/cryptopp/des.h" -#include "../../Common/3dParty/cryptopp/sha.h" -#include "../../Common/3dParty/cryptopp/md5.h" -#include "../../Common/3dParty/cryptopp/rsa.h" -#include "../../Common/3dParty/cryptopp/rc2.h" -#include "../../Common/3dParty/cryptopp/arc4.h" -#include "../../Common/3dParty/cryptopp/rc5.h" -#include "../../Common/3dParty/cryptopp/pwdbased.h" -#include "../../Common/3dParty/cryptopp/filters.h" -#include "../../Common/3dParty/cryptopp/osrng.h" -#include "../../Common/3dParty/cryptopp/hex.h" -#include "../../Common/3dParty/cryptopp/blowfish.h" -#include "../../Common/3dParty/cryptopp/zinflate.h" -#include "../../Common/3dParty/cryptopp/zdeflate.h" +#include "cryptopp/modes.h" +#include "cryptopp/aes.h" +#include "cryptopp/des.h" +#include "cryptopp/sha.h" +#include "cryptopp/md5.h" +#include "cryptopp/rsa.h" +#include "cryptopp/rc2.h" +#include "cryptopp/arc4.h" +#include "cryptopp/rc5.h" +#include "cryptopp/pwdbased.h" +#include "cryptopp/filters.h" +#include "cryptopp/osrng.h" +#include "cryptopp/hex.h" +#include "cryptopp/blowfish.h" +#include "cryptopp/zinflate.h" +#include "cryptopp/zdeflate.h" #include "../../OOXML/Base/unicode_util.h" #include "../../OOXML/Base/Base.h" diff --git a/PdfFile/CMakeLists.txt b/PdfFile/CMakeLists.txt index f5cb090a67..809277f499 100644 --- a/PdfFile/CMakeLists.txt +++ b/PdfFile/CMakeLists.txt @@ -515,4 +515,4 @@ target_link_libraries(PdfFile PUBLIC # Ole32 # Windows ) -copy_artifacts_to_folder("PdfFile" "${EO_CORE_OUTPUT_DIR}") \ No newline at end of file +copy_artifacts_to_folder("PdfFile" "${EO_CORE_OUTPUT_DIR}") From e6d2cc7c0fdc3845426e3cc6015e027d1fff741c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20Bari?= Date: Thu, 5 Mar 2026 15:20:40 +0100 Subject: [PATCH 11/11] fix: Doing test discovery pre-test MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tamás Bari --- Common/3dParty/openssl/test/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/Common/3dParty/openssl/test/CMakeLists.txt b/Common/3dParty/openssl/test/CMakeLists.txt index bcd07cb559..19cbe445f8 100644 --- a/Common/3dParty/openssl/test/CMakeLists.txt +++ b/Common/3dParty/openssl/test/CMakeLists.txt @@ -68,4 +68,5 @@ register_test_target(openssl_tests) include(${doctest_SOURCE_DIR}/scripts/cmake/doctest.cmake) doctest_discover_tests(openssl_test TEST_PREFIX "openssl." + DISCOVERY_MODE PRE_TEST )