Some more MinGW build tweaks.
Added envvars to specify OpenSSL include, libpath and lib.
Added rule to create curlbuild.h from curlbuild.h.dist.
diff --git a/docs/examples/Makefile.m32 b/docs/examples/Makefile.m32
index 45cde77..44c2883 100644
--- a/docs/examples/Makefile.m32
+++ b/docs/examples/Makefile.m32
@@ -40,8 +40,11 @@
ifndef OPENSSL_PATH
OPENSSL_PATH = ../../../openssl-0.9.8r
endif
-ifndef OPENSSL_LIB
-OPENSSL_LIB = $(OPENSSL_PATH)/out
+ifndef OPENSSL_LIBPATH
+OPENSSL_LIBPATH = $(OPENSSL_PATH)/out
+endif
+ifndef OPENSSL_LIBS
+OPENSSL_LIBS = -leay32 -lssl32
endif
# Edit the path below to point to the base of your LibSSH2 package.
ifndef LIBSSH2_PATH
@@ -91,6 +94,7 @@
LDFLAGS = -s
RC = windres
RCFLAGS = --include-dir=$(PROOT)/include -O COFF -i
+
RM = del /q /f 2>NUL
CP = copy
@@ -165,7 +169,7 @@
endif
ifdef SSL
CFLAGS += -DUSE_SSLEAY -DHAVE_OPENSSL_ENGINE_H
- curl_LDADD += -L"$(OPENSSL_LIB)" -leay32 -lssl32
+ curl_LDADD += -L"$(OPENSSL_LIBPATH)" $(OPENSSL_LIBS)
endif
ifdef ZLIB
INCLUDES += -I"$(ZLIB_PATH)"
diff --git a/lib/Makefile.m32 b/lib/Makefile.m32
index c7c4970..4ed670d 100644
--- a/lib/Makefile.m32
+++ b/lib/Makefile.m32
@@ -23,8 +23,11 @@
ifndef OPENSSL_INCLUDE
OPENSSL_INCLUDE = $(OPENSSL_PATH)/outinc
endif
-ifndef OPENSSL_LIB
-OPENSSL_LIB = $(OPENSSL_PATH)/out
+ifndef OPENSSL_LIBPATH
+OPENSSL_LIBPATH = $(OPENSSL_PATH)/out
+endif
+ifndef OPENSSL_LIBS
+OPENSSL_LIBS = -leay32 -lssl32
endif
# Edit the path below to point to the base of your LibSSH2 package.
ifndef LIBSSH2_PATH
@@ -73,9 +76,11 @@
RANLIB = ranlib
RC = windres
RCFLAGS = --include-dir=$(PROOT)/include -DDEBUGBUILD=0 -O COFF -i
-RM = del /q /f 2>NUL
STRIP = strip -g
+RM = del /q /f 2>NUL
+CP = copy
+
########################################################
## Nothing more to do below this line!
@@ -144,7 +149,7 @@
CFLAGS += -DUSE_SSLEAY -DUSE_OPENSSL -DHAVE_OPENSSL_ENGINE_H -DHAVE_OPENSSL_PKCS12_H \
-DHAVE_ENGINE_LOAD_BUILTIN_ENGINES -DOPENSSL_NO_KRB5 \
-DCURL_WANTS_CA_BUNDLE_ENV
- DLL_LIBS += -L"$(OPENSSL_LIB)" -leay32 -lssl32
+ DLL_LIBS += -L"$(OPENSSL_LIBPATH)" $(OPENSSL_LIBS)
endif
ifdef ZLIB
INCLUDES += -I"$(ZLIB_PATH)"
@@ -227,6 +232,9 @@
$(RC) $(RCFLAGS) $< -o $@
clean:
+ifeq "$(wildcard $(PROOT)/include/curl/curlbuild.h.dist)" "$(PROOT)/include/curl/curlbuild.h.dist"
+ -$(RM) $(subst /,\,$(PROOT)/include/curl/curlbuild.h)
+endif
-$(RM) $(libcurl_a_OBJECTS) $(RESOURCE)
distclean vclean: clean
@@ -235,3 +243,7 @@
$(LIBCARES_PATH)/libcares.a:
$(MAKE) -C $(LIBCARES_PATH) -f Makefile.m32
+$(PROOT)/include/curl/curlbuild.h:
+ @echo Creating $@
+ @$(CP) $(subst /,\,$@).dist $(subst /,\,$@)
+
diff --git a/src/Makefile.m32 b/src/Makefile.m32
index 9d37634..f0085a0 100644
--- a/src/Makefile.m32
+++ b/src/Makefile.m32
@@ -20,8 +20,11 @@
ifndef OPENSSL_PATH
OPENSSL_PATH = ../../openssl-0.9.8r
endif
-ifndef OPENSSL_LIB
-OPENSSL_LIB = $(OPENSSL_PATH)/out
+ifndef OPENSSL_LIBPATH
+OPENSSL_LIBPATH = $(OPENSSL_PATH)/out
+endif
+ifndef OPENSSL_LIBS
+OPENSSL_LIBS = -leay32 -lssl32
endif
# Edit the path below to point to the base of your LibSSH2 package.
ifndef LIBSSH2_PATH
@@ -68,6 +71,7 @@
LDFLAGS = -s
RC = windres
RCFLAGS = --include-dir=$(PROOT)/include -O COFF -i
+
RM = del /q /f 2>NUL
CP = copy
@@ -146,7 +150,7 @@
endif
ifdef SSL
CFLAGS += -DUSE_SSLEAY -DHAVE_OPENSSL_ENGINE_H
- curl_LDADD += -L"$(OPENSSL_LIB)" -leay32 -lssl32
+ curl_LDADD += -L"$(OPENSSL_LIBPATH)" $(OPENSSL_LIBS)
endif
ifdef ZLIB
INCLUDES += -I"$(ZLIB_PATH)"