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)"