smanders / externpro

build external projects with cmake
MIT License
13 stars 12 forks source link

update the openssl version #314

Closed smanders closed 2 years ago

smanders commented 3 years ago

we currently build openssl version 1.1.1d with a patch that introduces cmake build support https://github.com/openssl/openssl/compare/OpenSSL_1_1_1d...smanders:xp_1_1_1d

issue to track updating to version 1.1.1d https://github.com/smanders/externpro/issues/36

node v14.16.1 (the current v14.x release) has a dependency on openssl and uses version 1.1.1k

openssl 1.1.1k was released 2021.03.25 https://github.com/openssl/openssl/releases/tag/OpenSSL_1_1_1k https://github.com/openssl/openssl/tree/OpenSSL_1_1_1k

smanders commented 3 years ago

openssl version 1.1.1k with patch that introduces cmake build support https://github.com/openssl/openssl/compare/OpenSSL_1_1_1k...smanders:xp_1_1_1k

asm_1.1.1k tag https://github.com/smanders/opensslasm/commit/6bff63151916fe9869f0b8fedd4dfa6b6bba23e3

copyfromnode.cmake update https://github.com/smanders/opensslasm/commit/6bff63151916fe9869f0b8fedd4dfa6b6bba23e3#diff-04a364ffddac589db4416fc9a88888d8cb896ee8895175bd21571ef73fab08d5

reminder: openssl generates assembly code from perl scripts, but externpro doesn't want to introduce a build dependency on perl (especially on Windows), so copies a select portion (linux-x86_64 and VC-WIN64A) of the assembly code from the nodejs repo

smanders commented 3 years ago

sometimes openssl builds, sometimes it fails to build - most likely fails if it finds the assembly and succeeds when it doesn't

I'm seeing build errors like the following

[  0%] Building C object crypto/CMakeFiles/crypto.dir/__/asmfromnode/archs/linux-x86_64/asm/crypto/x86_64cpuid.s.o
/bpvol/externpro/_bldossl/xpbase/Source/openssl_1.1.1k/asmfromnode/archs/linux-x86_64/asm/crypto/x86_64cpuid.s:2:1: error: expected identifier or '(' before '.' token
 .hidden OPENSSL_cpuid_setup
 ^
/bpvol/externpro/_bldossl/xpbase/Source/openssl_1.1.1k/asmfromnode/archs/linux-x86_64/asm/crypto/x86_64cpuid.s:12:26: error: stray '@' in program
 .type OPENSSL_atomic_add,@function
                          ^
/bpvol/externpro/_bldossl/xpbase/Source/openssl_1.1.1k/asmfromnode/archs/linux-x86_64/asm/crypto/x86_64cpuid.s:28:21: error: stray '@' in program
 .type OPENSSL_rdtsc,@function
                     ^
/bpvol/externpro/_bldossl/xpbase/Source/openssl_1.1.1k/asmfromnode/archs/linux-x86_64/asm/crypto/x86_64cpuid.s:40:26: error: stray '@' in program
 .type OPENSSL_ia32_cpuid,@function
                          ^
/bpvol/externpro/_bldossl/xpbase/Source/openssl_1.1.1k/asmfromnode/archs/linux-x86_64/asm/crypto/x86_64cpuid.s:209:23: error: stray '@' in program
 .type OPENSSL_cleanse,@function
                       ^
/bpvol/externpro/_bldossl/xpbase/Source/openssl_1.1.1k/asmfromnode/archs/linux-x86_64/asm/crypto/x86_64cpuid.s:246:21: error: stray '@' in program
 .type CRYPTO_memcmp,@function
                     ^
/bpvol/externpro/_bldossl/xpbase/Source/openssl_1.1.1k/asmfromnode/archs/linux-x86_64/asm/crypto/x86_64cpuid.s:281:24: error: stray '@' in program
 .type OPENSSL_wipe_cpu,@function
                        ^
/bpvol/externpro/_bldossl/xpbase/Source/openssl_1.1.1k/asmfromnode/archs/linux-x86_64/asm/crypto/x86_64cpuid.s:314:30: error: stray '@' in program
 .type OPENSSL_instrument_bus,@function
                              ^
/bpvol/externpro/_bldossl/xpbase/Source/openssl_1.1.1k/asmfromnode/archs/linux-x86_64/asm/crypto/x86_64cpuid.s:348:31: error: stray '@' in program
 .type OPENSSL_instrument_bus2,@function
                               ^
/bpvol/externpro/_bldossl/xpbase/Source/openssl_1.1.1k/asmfromnode/archs/linux-x86_64/asm/crypto/x86_64cpuid.s:397:33: error: stray '@' in program
 .type OPENSSL_ia32_rdrand_bytes,@function
                                 ^
/bpvol/externpro/_bldossl/xpbase/Source/openssl_1.1.1k/asmfromnode/archs/linux-x86_64/asm/crypto/x86_64cpuid.s:440:33: error: stray '@' in program
 .type OPENSSL_ia32_rdseed_bytes,@function
                                 ^
smanders commented 3 years ago

completed with commits referenced above

smanders commented 3 years ago

node v14.17.6 requires openssl 1.1.1l https://github.com/smanders/externpro/issues/272#issuecomment-921201077

smanders commented 2 years ago

completed with commits referenced above