Refresh 002-relocation.patch. The whole openssl dir code was changed upstream and now has everything in one place with the option to read the dirs from the Windows registry if built with OSSL_WINCTX defined. The registry parts are from what I see namespaced by version and written by the official installer, so we probably don't want to use that to avoid any conflicts with the official installation. The upside though is that we need to add relocation in fewer places now, and even the "openssl info" commands will use the new functions to now show proper Windows paths instead of the configure time cygwin ones. Besides that there shouldn't be any functional change. and -j1 for make install to avoid it failing
61 lines
2.0 KiB
Diff
61 lines
2.0 KiB
Diff
--- openssl-3.4.0/crypto/defaults.c.orig 2024-10-26 22:31:02.982502600 +0200
|
|
+++ openssl-3.4.0/crypto/defaults.c 2024-10-26 22:42:06.278689000 +0200
|
|
@@ -12,6 +12,7 @@
|
|
#include "internal/thread_once.h"
|
|
#include "internal/cryptlib.h"
|
|
#include "internal/e_os.h"
|
|
+#include "pathtools.h"
|
|
|
|
#if defined(_WIN32) && defined(OSSL_WINCTX)
|
|
|
|
@@ -148,6 +149,12 @@
|
|
if (!RUN_ONCE(&defaults_setup_init, do_defaults_setup))
|
|
return NULL;
|
|
return (const char *)openssldirptr;
|
|
+#elif defined(__MINGW32__)
|
|
+ static char * reloc = NULL;
|
|
+ if (reloc == NULL) {
|
|
+ reloc = single_path_relocation_lib(OPENSSLBIN, OPENSSLDIR);
|
|
+ }
|
|
+ return reloc;
|
|
# else
|
|
return OPENSSLDIR;
|
|
#endif
|
|
@@ -164,6 +171,12 @@
|
|
if (!RUN_ONCE(&defaults_setup_init, do_defaults_setup))
|
|
return NULL;
|
|
return (const char *)enginesdirptr;
|
|
+#elif defined(__MINGW32__)
|
|
+ static char * reloc = NULL;
|
|
+ if (reloc == NULL) {
|
|
+ reloc = single_path_relocation_lib(OPENSSLBIN, ENGINESDIR);
|
|
+ }
|
|
+ return reloc;
|
|
#else
|
|
return ENGINESDIR;
|
|
#endif
|
|
@@ -180,6 +193,12 @@
|
|
if (!RUN_ONCE(&defaults_setup_init, do_defaults_setup))
|
|
return NULL;
|
|
return (const char *)modulesdirptr;
|
|
+#elif defined(__MINGW32__)
|
|
+ static char * reloc = NULL;
|
|
+ if (reloc == NULL) {
|
|
+ reloc = single_path_relocation_lib(OPENSSLBIN, MODULESDIR);
|
|
+ }
|
|
+ return reloc;
|
|
#else
|
|
return MODULESDIR;
|
|
#endif
|
|
--- openssl-3.4.0/crypto/build.info.orig 2024-10-22 14:26:59.000000000 +0200
|
|
+++ openssl-3.4.0/crypto/build.info 2024-10-26 22:39:26.015573200 +0200
|
|
@@ -107,7 +107,7 @@
|
|
comp_methods.c cversion.c info.c cpt_err.c ebcdic.c uid.c o_time.c \
|
|
o_dir.c o_fopen.c getenv.c o_init.c init.c trace.c provider.c \
|
|
provider_child.c punycode.c passphrase.c sleep.c deterministic_nonce.c \
|
|
- quic_vlint.c time.c defaults.c
|
|
+ quic_vlint.c time.c defaults.c pathtools.c
|
|
SOURCE[../providers/libfips.a]=$UTIL_COMMON
|
|
|
|
SOURCE[../libcrypto]=$UPLINKSRC
|