Jan Ehrhardt in gmane.comp.apache.apr.devel (Sun, 19 Mar 2017 20:21:47 +0100): >>So, the answer to the question "does it work for you?" seems to be No. > >Or Yes, if CMake works. I will try that later.
CMake almost works. I had the following dirs - apr - apr - apr-util - xml - openssl For apr and apr-util I used the 1.6.x branches: http://svn.apache.org/viewvc/apr/apr/branches/1.6.x/ http://svn.apache.org/viewvc/apr/apr-util/branches/1.6.x/ Steps for compiling the VC14 x64 libs and dll's: . compile OpenSSL (version 1.1.0e). . copy the XML headers to \apr\apr-util\include . install \apr\apr\include\apr.h manually (cf apr 1.4/OpenSSL 1.0.2) . compile apr, with the CMake args on 1 line: set INCLUDE=\apr\openssl\include;%INCLUDE% set LIB=\apr\openssl\;%LIB% set PATH=\apr\openssl\apps;%PATH% cd \apr\apr if exist \apr\apr\vc14.x64 rd \apr\apr\vc14.x64 md \apr\apr\vc14.x64 cd \apr\apr\vc14.x64 cmake -G "Visual Studio 14 2015 Win64" -D CMAKE_BUILD_TYPE=RelWithDebInfo \ -D APR_BUILD_TESTAPR=1 -D CMAKE_INSTALL_PREFIX=\apr\install \ -D INSTALL_PDB=OFF .. pause call msbuild APR.sln /p:Configuration=RelWithDebInfo /p:Platform=x64 call msbuild INSTALL.vcxproj /p:Configuration=RelWithDebInfo /p:Platform=x64 . compile apr-util, with the CMake args on 1 line: set INCLUDE=\apr\openssl\include;%INCLUDE% set LIB=\apr\openssl\;%LIB% set PATH=\apr\openssl\apps;%PATH% cd \apr\apr-util if exist \apr\apr-util\vc14.x64 rd \apr\apr-util\vc14.x64 md \apr\apr-util\vc14.x64 cd \apr\apr-util\vc14.x64 cmake -G "Visual Studio 14 2015 Win64" \ -D OPENSSL_ROOT_DIR=\apr\openssl -D OPENSSL_INCLUDE_DIR=\apr\openssl\include \ -D APR_INCLUDE_DIR=\apr\apr\include -D APR_LIBRARIES=\apr\apr\vc14.x64\RelWithDebInfo\libapr-1.lib \ -D APU_HAVE_CRYPTO=1 -D APR_BUILD_TESTAPR=1 -D CMAKE_INSTALL_PREFIX=\apr\install -D INSTALL_PDB=OFF .. pause perl -pi.bak -e "s/;APU_DECLARE_EXPORT;/;APR_DECLARE_EXPORT;APU_DECLARE_EXPORT;/gi" libaprutil-1.vcxproj for %%f in (*.vcxproj) do perl -pi.bak -e "s/;DLL_NAME=/;APR_DECLARE_EXPORT;APU_DECLARE_EXPORT;DLL_NAME=/gi" %%f call msbuild APR.sln /p:Configuration=RelWithDebInfo /p:Platform=x64 call msbuild INSTALL.vcxproj /p:Configuration=RelWithDebInfo /p:Platform=x64 The two perl replacements are need to avoid errors that dllimport is not allowed. They can be patched into the apr-util CMakeLists.txt Result (zipped from \apr\install): https://phpdev.toolsforresearch.com/apr-1.6.x.zip I did not run any tests, but it is a start. -- Jan