... c:
cd \
svn co https://svn.apache.org/repos/asf/tomcat/native/trunk/ tomcat-native-1.2.x
cd tomcat-native-1.2.x\native\srclib\apr Unpack APR 1.67.5 0 source distribution in this directory (C:\tomcat-native-1.2.x\native\srclib\apr). ... c:\cmsc\setenv.bat /x86
nmake -f NMAKEmakefile BUILD_CPU=x86 APR_DECLARE_STATIC=1
c:\cmsc\setenv.bat /x64
nmake -f NMAKEmakefile BUILD_CPU=x64 APR_DECLARE_STATIC=1
cd ..\openssl
OpenSSL 1.1.0 and earlier ...
.
...
.
...
\openssl
... Apply openssl-msvcrt.patch. Note that the patch will apply but depending on exactly which revision you are working with you may need to skip the first part of the patch.
c:\cmsc\setenv.bat /x86
perl Configure VC-WIN32
ms\do_nasm
nmake -f ms\nt.mak
move out32 out32-x86
c:\cmsc\setenv.bat /x64
perl Configure VC-WIN64A
ms\do_win64a
nmake -f ms\nt.mak clean
nmake -f ms\nt.mak
move out32 out32-x64
OpenSSL 1.1.1 and later Unpack the OpenSSL 1.1.1a source distribution in this directory (C:\tomcat-native-1.2.x\native\srclib\openssl). ... Keeping the various libraries in versioned directories saves having to rebuild them next time if the version remains unchanged. cd ..
set OPENSSL_VER=1.01.2q1g
set APR_VER=1.6.5
mkdir \deps-x86\apr-%APR_VER%\include
mkdir \deps-x86\apr-%APR_VER%\lib
mkdir \deps-x86\openssl-%OPENSSL_VER%\include
mkdir \deps-x86\openssl-%OPENSSL_VER%\lib
xcopy /E \deps-x86\apr-%APR_VER% \deps-x64\apr-%APR_VER%\ xcopy /E \deps-x86\openssl-%OPENSSL_VER% \deps-x64\openssl-%OPENSSL_VER%\
xcopy /E apr\include \deps-x86\apr-%APR_VER%\include\
xcopy /E apr\include \deps-x64\apr-%APR_VER%\include\
copy apr\WIN7_X86_LIB_RELEASE\apr-1.lib \deps-x86\apr-%APR_VER%\lib
copy apr\WIN7_X64_LIB_RELEASE\apr-1.lib \deps-x64\apr-%APR_VER%\lib ... xcopy /E openssl\inc32 \deps-x86\openssl-%OPENSSL_VER%\include\
xcopy /E openssl\inc32 \deps-x64\openssl-%OPENSSL_VER%\include\
OpenSSL 1.1.1 and later
xcopy /E openssl\include\openssl \deps-x86\openssl-%OPENSSL_VER%\include\openssl\
xcopy /E openssl\include\openssl \deps-x64\openssl-%OPENSSL_VER%\include\openssl\ ... copy openssl\out32-x86\*.lib \deps-x86\openssl-%OPENSSL_VER%\lib\ copy openssl\out32-x64\*.lib \deps-x64\openssl-%OPENSSL_VER%\lib\ copy openssl\out32-x86\openssl.exe \deps-x86\openssl-%OPENSSL_VER%\ copy openssl\out32-x64\openssl.exe \deps-x64\openssl-%OPENSSL_VER%\
cd ..
SETset JAVA_HOME=C:\Program Files\Java\jdk1.7.0_71
OpenSSL 1.1.0 and earlier As below but remove:
OPENSSL_NEW_LIBS=1
from each of the nmake lines OpenSSL 1.1.1 and later
java\adopt-8.0.242.09-x64
c:\cmsc\setenv.bat /x86 nmake -f NMAKEMakefile WITH_APR=C:\deps-x86\apr-%APR_VER% WITH_OPENSSL=C:\deps-x86\openssl-%OPENSSL_VER% APR_DECLARE_STATIC=1 OPENSSL_NEW_LIBS=1 ENABLE_OCSP=1 move WIN7_X86_DLL_RELEASE WIN7_X86_OCSP_DLL_RELEASE nmake -f NMAKEMakefile WITH_APR=C:\deps-x86\apr-%APR_VER% WITH_OPENSSL=C:\deps-x86\openssl-%OPENSSL_VER% APR_DECLARE_STATIC=1 OPENSSL_NEW_LIBS=1 ... Construct the binary distributions set VER=1.2.1824
mkdir tomcat-native-%VER%-openssl-%OPENSSL_VER%-win32-bin copy LICENSE.bin.win tomcat-native-%VER%-openssl-%OPENSSL_VER%-win32-bin\LICENSE copy NOTICE.bin.win tomcat-native-%VER%-openssl-%OPENSSL_VER%-win32-bin\NOTICE copy ..\README.txt tomcat-native-%VER%-openssl-%OPENSSL_VER%-win32-bin\ copy srclib\VERSIONS tomcat-native-%VER%-openssl-%OPENSSL_VER%-win32-bin\ ... |