@echo off
git clone https://github.com/curl/curl
git clone https://github.com/madler/zlib
git clone https://github.com/google/brotli
git clone https://github.com/facebook/zstd
cd zlib/
cmake CMakeLists.txt
msbuild zlib.sln /p:Configuration=Release
cd ..
cd brotli/
cmake CMakeLists.txt
msbuild brotli.sln /p:Configuration=Release
cd ..
cd zstd/build/cmake/
cmake CMakeLists.txt
msbuild zstd.sln /p:Configuration=Release
cd ..
cd ..
cd ..
git clone https://github.com/nghttp2/nghttp2
cd nghttp2/
cmake CmaMeLists.txt
msbuild nghttp2.sln /p:Configuration=Release
cd ..
cd curl/
cmake CMakeLists.txt -DCURL_USE_LIBPSL=OFF -DZLIB_INCLUDE_DIR="../zlib" -DZLIB_LIBRARY="../zlib/Release/z.lib" -DBROTLI_INCLUDE_DIR="../brotli/c/include/" -DBROTLIDEC_LIBRARY="../brolti/Release/brotlidec.lib" -D BROTLICOMMON_LIBRARY="../brotli/Release/brotlicommon.lib" -DZSTD_INCLUDE_DIR="../zstd/lib" -DZSTD_LIBRARY="../zstd/build/cmake/lib/Release/zstd_static.lib" -DNGHTTP2_INCLUDE_DIR="../nghttp2/lib/includes/" -DNGHTTP2_LIBRARY="../nghttp2/lib/Release/nghttp2.lib"
msbuild CURL.sln /p:Configuration=Release
#ifdef BOOST_AUTO_LINK_NOMANGLE
# pragma comment(lib, BOOST_STRINGIZE(BOOST_LIB_NAME) BOOST_LIB_SUFFIX)
# ifdef BOOST_LIB_DIAGNOSTIC
# pragma message ("Linking to lib file: " BOOST_STRINGIZE(BOOST_LIB_NAME) BOOST_LIB_SUFFIX)
# endif
#elif defined(BOOST_AUTO_LINK_TAGGED)
# pragma comment(lib, BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT BOOST_LIB_ARCH_AND_MODEL_OPT BOOST_LIB_SUFFIX)
# ifdef BOOST_LIB_DIAGNOSTIC
# pragma message ("Linking to lib file: " BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT BOOST_LIB_ARCH_AND_MODEL_OPT BOOST_LIB_SUFFIX)
# endif
#elif defined(BOOST_AUTO_LINK_SYSTEM)
# pragma comment(lib, BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) BOOST_LIB_SUFFIX)
# ifdef BOOST_LIB_DIAGNOSTIC
# pragma message ("Linking to lib file: " BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) BOOST_LIB_SUFFIX)
# endif
#elif defined(BOOST_LIB_BUILDID)
# pragma comment(lib, BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) "-" BOOST_LIB_TOOLSET BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT BOOST_LIB_ARCH_AND_MODEL_OPT "-" BOOST_LIB_VERSION "-" BOOST_STRINGIZE(BOOST_LIB_BUILDID) BOOST_LIB_SUFFIX)
# ifdef BOOST_LIB_DIAGNOSTIC
# pragma message ("Linking to lib file: " BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) "-" BOOST_LIB_TOOLSET BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT BOOST_LIB_ARCH_AND_MODEL_OPT "-" BOOST_LIB_VERSION "-" BOOST_STRINGIZE(BOOST_LIB_BUILDID) BOOST_LIB_SUFFIX)
# endif
#else
# pragma comment(lib, BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) "-" BOOST_LIB_TOOLSET BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT BOOST_LIB_ARCH_AND_MODEL_OPT "-" BOOST_LIB_VERSION BOOST_LIB_SUFFIX)
# ifdef BOOST_LIB_DIAGNOSTIC
# pragma message ("Linking to lib file: " BOOST_LIB_PREFIX BOOST_STRINGIZE(BOOST_LIB_NAME) "-" BOOST_LIB_TOOLSET BOOST_LIB_THREAD_OPT BOOST_LIB_RT_OPT BOOST_LIB_ARCH_AND_MODEL_OPT "-" BOOST_LIB_VERSION BOOST_LIB_SUFFIX)
# endif
#endif
#else
# error "some required macros where not defined (internal logic error)."
#endif
git clone https://github.com/boostorg/boost
cd boost/
git submodule update --init
.\bootstrap.bat
.\b2.exe runtime-link=static link=static release