CMake: Make everything working under Windows

This commit is contained in:
Axel Isouard 2016-11-26 17:45:35 +01:00
parent c38445b4aa
commit 2bbdf4e794
No known key found for this signature in database
GPG key ID: 4E64BB3EAAF31C29
2 changed files with 39 additions and 11 deletions

View file

@ -1,6 +1,12 @@
find_program(DEPOTTOOLS_GCLIENT_EXECUTABLE
NAMES gclient gclient.bat
PATHS ${CMAKE_CURRENT_SOURCE_DIR}/Dependencies/depot_tools)
if (WIN32)
find_program(DEPOTTOOLS_GCLIENT_EXECUTABLE
NAMES gclient.bat
PATHS ${CMAKE_CURRENT_SOURCE_DIR}/Dependencies/depot_tools)
else (WIN32)
find_program(DEPOTTOOLS_GCLIENT_EXECUTABLE
NAMES gclient
PATHS ${CMAKE_CURRENT_SOURCE_DIR}/Dependencies/depot_tools)
endif (WIN32)
include(${CMAKE_ROOT}/Modules/FindPackageHandleStandardArgs.cmake)
find_package_handle_standard_args(DepotTools

View file

@ -10,6 +10,16 @@ ExternalProject_Add(chromium
BUILD_COMMAND ""
INSTALL_COMMAND "")
set(GCLIENT_CONFIG_COMMAND
${DEPOTTOOLS_GCLIENT_EXECUTABLE} config --name src
https://chromium.googlesource.com/external/webrtc.git)
set(GCLIENT_SYNC_COMMAND
${DEPOTTOOLS_GCLIENT_EXECUTABLE} sync
--revision ${LIBWEBRTC_WEBRTC_REVISION} -n -D)
set(SETUP_LINKS_COMMAND ${PYTHON_EXECUTABLE} src/setup_links.py)
ExternalProject_Add(webrtc
DEPENDS chromium
@ -18,21 +28,22 @@ ExternalProject_Add(webrtc
SOURCE_DIR ${CMAKE_BINARY_DIR}
DOWNLOAD_DIR ${CMAKE_BINARY_DIR}
DOWNLOAD_COMMAND ""
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
DOWNLOAD_COMMAND ${GCLIENT_CONFIG_COMMAND}
UPDATE_COMMAND ${GCLIENT_SYNC_COMMAND}
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/src/chromium/src/third_party/llvm-build/Release+Asserts
BUILD_COMMAND ${SETUP_LINKS_COMMAND}
INSTALL_COMMAND ""
LOG_DOWNLOAD 0
LOG_DOWNLOAD 1
LOG_CONFIGURE 1
LOG_UPDATE 0
LOG_CONFIGURE 0
LOG_BUILD 0
LOG_TEST 0
LOG_INSTALL 0)
#
# Configure gclient
#
#[[
set(GCLIENT_CONFIG_COMMAND
${DEPOTTOOLS_GCLIENT_EXECUTABLE} config --name src
https://chromium.googlesource.com/external/webrtc.git)
@ -73,7 +84,7 @@ ExternalProject_Add_Step(webrtc links
COMMENT "Generate symbolic links"
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/src)
#
#]]
# Generate build files
#
set(LIBWEBRTC_GEN_ARGS use_gold=false)
@ -104,6 +115,17 @@ add_libwebrtc_command(webrtc-generate
"Generating build files"
webrtc)
#
# Update clang
#
set(UPDATE_CLANG_COMMAND ${PYTHON_EXECUTABLE} chromium/src/tools/clang/scripts/update.py)
add_libwebrtc_command(webrtc-clang
"Clang"
"${UPDATE_CLANG_COMMAND}"
${CMAKE_BINARY_DIR}/src
"Updating clang"
webrtc-generate)
#
# Run the build command
#
@ -113,7 +135,7 @@ add_libwebrtc_command(webrtc-ninja
"${LIBWEBRTC_BUILD_CMD}"
${CMAKE_BINARY_DIR}/src
"Building WebRTC"
webrtc-generate)
webrtc-clang)
#
# Link the library