# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2004, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
#
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
# KIND, either express or implied.
#
-# $Id$
###########################################################################
+VC=vc6
+
all:
./configure
make
make
borland:
- cd lib & make -f Makefile.b32
- cd src & make -f Makefile.b32
+ cd lib
+ $(MAKE) -f Makefile.b32
+ cd ..\src
+ $(MAKE) -f Makefile.b32
+
+borland-ssl:
+ cd lib
+ $(MAKE) -f Makefile.b32 WITH_SSL=1
+ cd ..\src
+ $(MAKE) -f Makefile.b32 WITH_SSL=1
+
+borland-ssl-zlib:
+ cd lib
+ $(MAKE) -f Makefile.b32 WITH_SSL=1 WITH_ZLIB=1
+ cd ..\src
+ $(MAKE) -f Makefile.b32 WITH_SSL=1 WITH_ZLIB=1
+
+borland-clean:
+ cd lib
+ $(MAKE) -f Makefile.b32 clean
+ cd ..\src
+ $(MAKE) -f Makefile.b32 clean
+
+watcom: .SYMBOLIC
+ cd lib && $(MAKE) -u -f Makefile.Watcom
+ cd src && $(MAKE) -u -f Makefile.Watcom
+
+watcom-clean: .SYMBOLIC
+ cd lib && $(MAKE) -u -f Makefile.Watcom clean
+ cd src && $(MAKE) -u -f Makefile.Watcom clean
+
+watcom-vclean: .SYMBOLIC
+ cd lib && $(MAKE) -u -f Makefile.Watcom vclean
+ cd src && $(MAKE) -u -f Makefile.Watcom vclean
mingw32:
- cd lib & make -f Makefile.m32 ZLIB=1
- cd src & make -f Makefile.m32 ZLIB=1
+ $(MAKE) -C lib -f Makefile.m32
+ $(MAKE) -C src -f Makefile.m32
+
+mingw32-clean:
+ $(MAKE) -C lib -f Makefile.m32 clean
+ $(MAKE) -C src -f Makefile.m32 clean
+ $(MAKE) -C docs/examples -f Makefile.m32 clean
+
+mingw32-vclean mingw32-distclean:
+ $(MAKE) -C lib -f Makefile.m32 vclean
+ $(MAKE) -C src -f Makefile.m32 vclean
+ $(MAKE) -C docs/examples -f Makefile.m32 vclean
+
+mingw32-examples%:
+ $(MAKE) -C docs/examples -f Makefile.m32 CFG=$@
+
+mingw32%:
+ $(MAKE) -C lib -f Makefile.m32 CFG=$@
+ $(MAKE) -C src -f Makefile.m32 CFG=$@
+
+vc-clean: $(VC)
+ cd lib
+ nmake -f Makefile.$(VC) clean
+ cd ..\src
+ nmake -f Makefile.$(VC) clean
+
+vc-all: $(VC)
+ cd lib
+ nmake -f Makefile.$(VC) cfg=release
+ nmake -f Makefile.$(VC) cfg=release-ssl
+ nmake -f Makefile.$(VC) cfg=release-zlib
+ nmake -f Makefile.$(VC) cfg=release-ssl-zlib
+ nmake -f Makefile.$(VC) cfg=release-ssl-dll
+ nmake -f Makefile.$(VC) cfg=release-zlib-dll
+ nmake -f Makefile.$(VC) cfg=release-ssl-dll-zlib-dll
+ nmake -f Makefile.$(VC) cfg=release-dll
+ nmake -f Makefile.$(VC) cfg=release-dll-ssl-dll
+ nmake -f Makefile.$(VC) cfg=release-dll-zlib-dll
+ nmake -f Makefile.$(VC) cfg=release-dll-ssl-dll-zlib-dll
+ nmake -f Makefile.$(VC) cfg=debug
+ nmake -f Makefile.$(VC) cfg=debug-ssl
+ nmake -f Makefile.$(VC) cfg=debug-zlib
+ nmake -f Makefile.$(VC) cfg=debug-ssl-zlib
+ nmake -f Makefile.$(VC) cfg=debug-ssl-dll
+ nmake -f Makefile.$(VC) cfg=debug-zlib-dll
+ nmake -f Makefile.$(VC) cfg=debug-ssl-dll-zlib-dll
+ nmake -f Makefile.$(VC) cfg=debug-dll
+ nmake -f Makefile.$(VC) cfg=debug-dll-ssl-dll
+ nmake -f Makefile.$(VC) cfg=debug-dll-zlib-dll
+ nmake -f Makefile.$(VC) cfg=debug-dll-ssl-dll-zlib-dll
+
+vc: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) cfg=release
+ cd ..\src
+ nmake /f Makefile.$(VC)
+
+vc-x64: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) MACHINE=x64 cfg=release
+ cd ..\src
+ nmake /f Makefile.$(VC) MACHINE=x64 cfg=release
+
+vc-zlib: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) cfg=release-zlib
+ cd ..\src
+ nmake /f Makefile.$(VC) cfg=release-zlib
+
+vc-x64-zlib: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-zlib
+ cd ..\src
+ nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-zlib
+
+vc-ssl: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) cfg=release-ssl
+ cd ..\src
+ nmake /f Makefile.$(VC) cfg=release-ssl
+
+vc-winssl: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) cfg=release-winssl WINDOWS_SSPI=1
+ cd ..\src
+ nmake /f Makefile.$(VC) cfg=release-winssl WINDOWS_SSPI=1
+
+vc-x64-ssl: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl
+ cd ..\src
+ nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl
+
+vc-x64-winssl: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-winssl WINDOWS_SSPI=1
+ cd ..\src
+ nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-winssl WINDOWS_SSPI=1
-mingw32-ssl:
- cd lib & make -f Makefile.m32 SSL=1 ZLIB=1
- cd src & make -f Makefile.m32 SSL=1 ZLIB=1
+vc-ssl-zlib: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) cfg=release-ssl-zlib
+ cd ..\src
+ nmake /f Makefile.$(VC) cfg=release-ssl-zlib
+
+vc-winssl-zlib: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) cfg=release-winssl-zlib
+ cd ..\src
+ nmake /f Makefile.$(VC) cfg=release-winssl-zlib
+
+vc-x64-ssl-zlib: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-zlib
+ cd ..\src
+ nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-ssl-zlib
+
+vc-x64-winssl-zlib: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-winssl-zlib
+ cd ..\src
+ nmake /f Makefile.$(VC) MACHINE=x64 cfg=release-winssl-zlib
+
+vc-ssl-dll: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) cfg=release-ssl-dll
+ cd ..\src
+ nmake /f Makefile.$(VC) cfg=release-ssl-dll
+
+vc-dll-ssl-dll: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) cfg=release-dll-ssl-dll
+ cd ..\src
+ nmake /f Makefile.$(VC) cfg=release-dll-ssl-dll
+
+vc-dll: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) cfg=release-dll
+ cd ..\src
+ nmake /f Makefile.$(VC) cfg=release-dll
+
+vc-dll-zlib-dll: $(VC)
+ cd lib
+ nmake /f Makefile.$(VC) cfg=release-dll-zlib-dll
+ cd ..\src
+ nmake /f Makefile.$(VC) cfg=release-dll-zlib-dll
-vc:
+vc-dll-ssl-dll-zlib-dll: $(VC)
cd lib
- nmake /f Makefile.vc6 cfg=release
+ nmake /f Makefile.$(VC) cfg=release-dll-ssl-dll-zlib-dll
cd ..\src
- nmake /f Makefile.vc6
+ nmake /f Makefile.$(VC) cfg=release-dll-ssl-dll-zlib-dll
-vc-ssl:
+vc-ssl-dll-zlib-dll: $(VC)
cd lib
- nmake /f Makefile.vc6 cfg=release-ssl
+ nmake /f Makefile.$(VC) cfg=release-ssl-dll-zlib-dll
cd ..\src
- nmake /f Makefile.vc6 cfg=release-ssl
+ nmake /f Makefile.$(VC) cfg=release-ssl-dll-zlib-dll
-vc-ssl-dll:
+vc-zlib-dll: $(VC)
cd lib
- nmake /f Makefile.vc6 cfg=release-ssl-dll
+ nmake /f Makefile.$(VC) cfg=release-zlib-dll
cd ..\src
- nmake /f Makefile.vc6
+ nmake /f Makefile.$(VC) cfg=release-zlib-dll
-vc-libcurl-ssl-dll:
+vc-sspi: $(VC)
cd lib
- nmake /f Makefile.vc6 cfg=release-libcurl-ssl-dll
+ nmake /f Makefile.$(VC) cfg=release WINDOWS_SSPI=1
cd ..\src
- nmake /f Makefile.vc6
+ nmake /f Makefile.$(VC) cfg=release WINDOWS_SSPI=1
djgpp:
- make -C lib -f Makefile.dj
- make -C src -f Makefile.dj
+ $(MAKE) -C lib -f Makefile.dj
+ $(MAKE) -C src -f Makefile.dj
cygwin:
./configure
cd ./lib && make -f makefile.amiga
cd ./src && make -f makefile.amiga
+netware:
+ $(MAKE) -C lib -f Makefile.netware
+ $(MAKE) -C src -f Makefile.netware
+
+netware-clean:
+ $(MAKE) -C lib -f Makefile.netware clean
+ $(MAKE) -C src -f Makefile.netware clean
+ $(MAKE) -C docs/examples -f Makefile.netware clean
+netware-vclean netware-distclean:
+ $(MAKE) -C lib -f Makefile.netware vclean
+ $(MAKE) -C src -f Makefile.netware vclean
+ $(MAKE) -C docs/examples -f Makefile.netware vclean
+
+netware-install:
+ $(MAKE) -C lib -f Makefile.netware install
+ $(MAKE) -C src -f Makefile.netware install
+
+netware-examples-%:
+ $(MAKE) -C docs/examples -f Makefile.netware CFG=$@
+
+netware-%:
+ $(MAKE) -C lib -f Makefile.netware CFG=$@
+ $(MAKE) -C src -f Makefile.netware CFG=$@
unix: all
linux: all
linux-ssl: ssl
+
+# We don't need to do anything for vc6.
+vc6:
+
+# VC7 makefiles are for use with VS.NET and VS.NET 2003
+vc7: lib/Makefile.vc7 src/Makefile.vc7
+
+lib/Makefile.vc7: lib/Makefile.vc6
+ @echo "generate $@"
+ @sed -e "s/VC6/VC7/g" lib/Makefile.vc6 > lib/Makefile.vc7
+
+src/Makefile.vc7: src/Makefile.vc6
+ @echo "generate $@"
+ @sed -e "s/VC6/VC7/g" src/Makefile.vc6 > src/Makefile.vc7
+
+# VC8 makefiles are for use with VS2005
+vc8: lib/Makefile.vc8 src/Makefile.vc8
+
+lib/Makefile.vc8: lib/Makefile.vc6
+ @echo "generate $@"
+ @sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib bufferoverflowu.lib/g" -e "s/VC6/VC8/g" lib/Makefile.vc6 > lib/Makefile.vc8
+
+src/Makefile.vc8: src/Makefile.vc6
+ @echo "generate $@"
+ @sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib bufferoverflowu.lib/g" -e "s/VC6/VC8/g" src/Makefile.vc6 > src/Makefile.vc8
+
+# VC9 makefiles are for use with VS2008
+vc9: lib/Makefile.vc9 src/Makefile.vc9
+
+lib/Makefile.vc9: lib/Makefile.vc6
+ @echo "generate $@"
+ @sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc9/g" -e "s/VC6/VC9/g" lib/Makefile.vc6 > lib/Makefile.vc9
+
+src/Makefile.vc9: src/Makefile.vc6
+ @echo "generate $@"
+ @sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc9/g" -e "s/VC6/VC9/g" src/Makefile.vc6 > src/Makefile.vc9
+
+# VC10 makefiles are for use with VS2010
+vc10: lib/Makefile.vc10 src/Makefile.vc10
+
+lib/Makefile.vc10: lib/Makefile.vc6
+ @echo "generate $@"
+ @sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc10/g" -e "s/VC6/VC10/g" lib/Makefile.vc6 > lib/Makefile.vc10
+
+src/Makefile.vc10: src/Makefile.vc6
+ @echo "generate $@"
+ @sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc10/g" -e "s/VC6/VC10/g" src/Makefile.vc6 > src/Makefile.vc10
+
+# VC11 makefiles are for use with VS2012
+vc11: lib/Makefile.vc11 src/Makefile.vc11
+
+lib/Makefile.vc11: lib/Makefile.vc6
+ @echo "generate $@"
+ @sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc11/g" -e "s/VC6/VC11/g" lib/Makefile.vc6 > lib/Makefile.vc11
+
+src/Makefile.vc11: src/Makefile.vc6
+ @echo "generate $@"
+ @sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc11/g" -e "s/VC6/VC11/g" src/Makefile.vc6 > src/Makefile.vc11
+
+# VC12 makefiles are for use with VS2013
+vc12: lib/Makefile.vc12 src/Makefile.vc12
+
+lib/Makefile.vc12: lib/Makefile.vc6
+ @echo "generate $@"
+ @sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc12/g" -e "s/VC6/VC12/g" lib/Makefile.vc6 > lib/Makefile.vc12
+
+src/Makefile.vc12: src/Makefile.vc6
+ @echo "generate $@"
+ @sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc12/g" -e "s/VC6/VC12/g" src/Makefile.vc6 > src/Makefile.vc12
+
+ca-bundle: lib/mk-ca-bundle.pl
+ @echo "generate a fresh ca-bundle.crt"
+ @perl $< -b -l -u lib/ca-bundle.crt
+
+ca-firefox: lib/firefox-db2pem.sh
+ @echo "generate a fresh ca-bundle.crt"
+ ./lib/firefox-db2pem.sh lib/ca-bundle.crt