1- From 2b2ba58fedbded8de6879fa89719196480708661 Mon Sep 17 00:00:00 2001
1+ From ff09ed1ebf7621d89007f56d472ec6390d8ed9ed Mon Sep 17 00:00:00 2001
22From: Ray Donnelly <mingw.android@gmail.com>
33Date: Wed, 22 Feb 2017 11:03:04 +0100
44Subject: [PATCH 1/2] Make cURL relocatable
@@ -29,10 +29,10 @@ Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2929 4 files changed, 44 insertions(+)
3030
3131diff --git a/configure.ac b/configure.ac
32- index a4ea9f72d..166f370f6 100644
32+ index 7f5a2bff5..51653a12b 100644
3333--- a/configure.ac
3434+++ b/configure.ac
35- @@ -3608 ,6 +3608 ,7 @@ dnl default includes
35+ @@ -3952 ,6 +3952 ,7 @@ dnl default includes
3636 ]
3737 )
3838
@@ -41,18 +41,18 @@ index a4ea9f72d..166f370f6 100644
4141 dnl Checks for typedefs, structures, and compiler characteristics.
4242 AC_C_CONST
4343diff --git a/lib/Makefile.inc b/lib/Makefile.inc
44- index 66680f3ad..1772f7696 100644
44+ index a8e4da1cf..147500bf6 100644
4545--- a/lib/Makefile.inc
4646+++ b/lib/Makefile.inc
47- @@ -197 ,6 +197 ,7 @@ LIB_CFILES = \
47+ @@ -204 ,6 +204 ,7 @@ LIB_CFILES = \
4848 noproxy.c \
4949 openldap.c \
5050 parsedate.c \
5151+ pathtools.c \
5252 pingpong.c \
5353 pop3.c \
5454 progress.c \
55- @@ -333 ,6 +334 ,7 @@ LIB_HFILES = \
55+ @@ -343 ,6 +344 ,7 @@ LIB_HFILES = \
5656 nonblock.h \
5757 noproxy.h \
5858 parsedate.h \
@@ -61,12 +61,12 @@ index 66680f3ad..1772f7696 100644
6161 pop3.h \
6262 progress.h \
6363diff --git a/lib/curl_config.h.in b/lib/curl_config.h.in
64- index 50e075947..6c540bb25 100644
64+ index b4754f3e2..608903328 100644
6565--- a/lib/curl_config.h.in
6666+++ b/lib/curl_config.h.in
67- @@ -15 ,6 +15 ,9 @@
68- /* Location of default ca path */
69- #undef CURL_CA_PATH
67+ @@ -12 ,6 +12 ,9 @@
68+ /* If safe CA bundle search is enabled */
69+ #undef CURL_CA_SEARCH_SAFE
7070
7171+ /* Location of executable */
7272+ #undef CURL_BINDIR
@@ -75,24 +75,24 @@ index 50e075947..6c540bb25 100644
7575 #undef CURL_DEFAULT_SSL_BACKEND
7676
7777diff --git a/lib/url.c b/lib/url.c
78- index 2814d31ad..e7175be03 100644
78+ index 2125a97af..944f10e68 100644
7979--- a/lib/url.c
8080+++ b/lib/url.c
81- @@ -119,6 +119,9 @@
82- #include "altsvc.h"
81+ @@ -120,6 +120,9 @@
8382 #include "dynbuf.h"
8483 #include "headers.h"
84+ #include "strparse.h"
8585+ #if defined(__MINGW32__)
8686+ #include "pathtools.h"
8787+ #endif
88-
8988 /* The last 3 #include files should be in this order */
9089 #include "curl_printf.h"
91- @@ -436,22 +439,57 @@ CURLcode Curl_init_userdefined(struct Curl_easy *data)
90+ #include "curl_memory.h"
91+ @@ -430,22 +433,57 @@ CURLcode Curl_init_userdefined(struct Curl_easy *data)
9292 if(Curl_ssl_backend() != CURLSSLBACKEND_SCHANNEL &&
9393 Curl_ssl_backend() != CURLSSLBACKEND_SECURETRANSPORT) {
94- #if defined( CURL_CA_BUNDLE)
95- + #if defined( __MINGW32__)
94+ #ifdef CURL_CA_BUNDLE
95+ + #ifdef __MINGW32__
9696+ const size_t path_max = PATH_MAX;
9797+ char relocated_bundle[path_max];
9898+ get_dll_path(relocated_bundle, path_max);
@@ -120,8 +120,8 @@ index 2814d31ad..e7175be03 100644
120120 return result;
121121 #endif
122122 #endif
123- #if defined( CURL_CA_PATH)
124- + #if defined( __MINGW32__)
123+ #ifdef CURL_CA_PATH
124+ + #ifdef __MINGW32__
125125+ const size_t path_max = PATH_MAX;
126126+ char relocated_ca_path[path_max];
127127+ get_dll_path(relocated_ca_path, path_max);
0 commit comments