aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSilvio <silvio.traversaro@iit.it>2016-10-02 12:55:30 +0200
committerSilvio <silvio.traversaro@iit.it>2016-10-02 12:55:30 +0200
commitbcaae465c565a749da3d1d017f25770c326b41d1 (patch)
treed8772e5fc3d075189d1bf65ade739c908f2e7ff5
parente507c14229e5dd206499eef3ffa4e887131b9678 (diff)
downloadvcpkg-bcaae465c565a749da3d1d017f25770c326b41d1.tar.gz
vcpkg-bcaae465c565a749da3d1d017f25770c326b41d1.zip
Add platform option to vcpkg_build_msbuild
Also added documentation for the platform option and the rest of the function
-rw-r--r--scripts/cmake/vcpkg_build_msbuild.cmake46
1 files changed, 43 insertions, 3 deletions
diff --git a/scripts/cmake/vcpkg_build_msbuild.cmake b/scripts/cmake/vcpkg_build_msbuild.cmake
index bf7c1b546..f0f63b432 100644
--- a/scripts/cmake/vcpkg_build_msbuild.cmake
+++ b/scripts/cmake/vcpkg_build_msbuild.cmake
@@ -1,5 +1,42 @@
+#.rst:
+# .. command:: vcpkg_build_msbuild
+#
+# Build a msbuild-based project.
+#
+# ::
+# vcpkg_build_msbuild(PROJECT_PATH <sln_project_path>
+# [RELEASE_CONFIGURATION <release_configuration>] # (default = "Release")
+# [DEBUG_CONFIGURATION <debug_configuration>] @ (default = "Debug")
+# [PLATFORM <platform>] # (default = "${TRIPLET_SYSTEM_ARCH}")
+# [OPTIONS arg1 [arg2 ...]]
+# [OPTIONS_RELEASE arg1 [arg2 ...]]
+# [OPTIONS_DEBUG arg1 [arg2 ...]]
+# )
+#
+# ``PROJECT_PATH``
+# The path to the *.sln msbuild project file.
+# ``RELEASE_CONFIGURATION``
+# The configuration (``/p:Configuration`` msbuild parameter)
+# used for Release builds.
+# ``DEBUG_CONFIGURATION``
+# The configuration (``/p:Configuration`` msbuild parameter)
+# used for Debug builds.
+# ``DEBUG_CONFIGURATION``
+# The configuration (``/p:Configuration`` msbuild parameter)
+# used for Debug builds.
+# ``PLATFORM``
+# The platform (``/p:Platform`` msbuild parameter)
+# used for the build.
+# ``OPTIONS``
+# The options passed to msbuild for all builds.
+# ``OPTIONS_RELEASE``
+# The options passed to msbuild for Release builds.
+# ``OPTIONS_DEBUG``
+# The options passed to msbuild for Debug builds.
+#
+
function(vcpkg_build_msbuild)
- cmake_parse_arguments(_csc "" "PROJECT_PATH;RELEASE_CONFIGURATION;DEBUG_CONFIGURATION" "OPTIONS;OPTIONS_DEBUG;OPTIONS_RELEASE" ${ARGN})
+ cmake_parse_arguments(_csc "" "PROJECT_PATH;RELEASE_CONFIGURATION;DEBUG_CONFIGURATION;PLATFORM" "OPTIONS;OPTIONS_RELEASE;OPTIONS_DEBUG" ${ARGN})
if(NOT DEFINED _csc_RELEASE_CONFIGURATION)
set(_csc_RELEASE_CONFIGURATION Release)
@@ -7,13 +44,16 @@ function(vcpkg_build_msbuild)
if(NOT DEFINED _csc_DEBUG_CONFIGURATION)
set(_csc_DEBUG_CONFIGURATION Debug)
endif()
+ if(NOT DEFINED _csc_PLATFORM)
+ set(_csc_PLATFORM ${TRIPLET_SYSTEM_ARCH})
+ endif()
message(STATUS "Building ${_csc_PROJECT_PATH} for Release")
file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel)
vcpkg_execute_required_process(
COMMAND msbuild ${_csc_PROJECT_PATH} ${_csc_OPTIONS} ${_csc_OPTIONS_RELEASE}
/p:Configuration=${_csc_RELEASE_CONFIGURATION}
- /p:Platform=${TRIPLET_SYSTEM_ARCH}
+ /p:Platform=${_csc_PLATFORM}
/p:VCPkgLocalAppDataDisabled=true
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel
LOGNAME build-${TARGET_TRIPLET}-rel
@@ -24,7 +64,7 @@ function(vcpkg_build_msbuild)
vcpkg_execute_required_process(
COMMAND msbuild ${_csc_PROJECT_PATH} ${_csc_OPTIONS} ${_csc_OPTIONS_DEBUG}
/p:Configuration=${_csc_DEBUG_CONFIGURATION}
- /p:Platform=${TRIPLET_SYSTEM_ARCH}
+ /p:Platform=${_csc_PLATFORM}
/p:VCPkgLocalAppDataDisabled=true
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg
LOGNAME build-${TARGET_TRIPLET}-dbg