From 08f1c4a22302c649c22c1b479d6d1e4065e2336f Mon Sep 17 00:00:00 2001 From: R1tschY Date: Wed, 29 Jul 2015 16:50:01 +0200 Subject: [PATCH] Add support for cross compiling from linux for windows (only header-only libraries supported) --- blocks/boost/install/install.cmake | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/blocks/boost/install/install.cmake b/blocks/boost/install/install.cmake index ce5c3c5..682aa04 100644 --- a/blocks/boost/install/install.cmake +++ b/blocks/boost/install/install.cmake @@ -136,18 +136,20 @@ function(__BII_BOOST_INSTALL) set(BII_BOOST_DOWNLOAD_URL "http://sourceforge.net/projects/boost/files/boost/${BII_BOOST_VERSION}/${BII_BOOST_PACKAGE}" ${SCOPE}) #Bootstrap - if(CMAKE_SYSTEM_NAME MATCHES "Windows") + if((CMAKE_SYSTEM_NAME MATCHES "Windows") AND (NOT CMAKE_CROSSCOMPILING)) set(__BII_BOOST_BOOSTRAPER ${BII_BOOST_DIR}/bootstrap.bat ${SCOPE}) set(__BII_BOOST_B2 ${BII_BOOST_DIR}/b2.exe ${SCOPE}) - set(__DYNLIB_EXTENSION .dll ${SCOPE}) - elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin") + else() set(__BII_BOOST_BOOSTRAPER ${BII_BOOST_DIR}/bootstrap.sh ${SCOPE}) set(__BII_BOOST_B2 ${BII_BOOST_DIR}/b2 ${SCOPE}) - set(__DYNLIB_EXTENSION .dylib ${SCOPE}) + endif() + + if(CMAKE_SYSTEM_NAME MATCHES "Windows") + set(__DYNLIB_EXTENSION .dll ${SCOPE}) + elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin") + set(__DYNLIB_EXTENSION .dylib ${SCOPE}) elseif(CMAKE_SYSTEM_NAME MATCHES "Linux") - set(__BII_BOOST_BOOSTRAPER ${BII_BOOST_DIR}/bootstrap.sh ${SCOPE}) - set(__BII_BOOST_B2 ${BII_BOOST_DIR}/b2 ${SCOPE}) - set(__DYNLIB_EXTENSION .so ${SCOPE}) + set(__DYNLIB_EXTENSION .so ${SCOPE}) else() message(FATAL_ERROR "Unknown platform. Stopping Boost installation") endif()