mirror of
https://github.com/UltraCoderRU/libwebrtc.git
synced 2026-01-28 11:15:13 +00:00
Remove Common.cmake, set the environment variables separately, fixes #18
This commit is contained in:
parent
adb56b350c
commit
6b3a1de6e8
1 changed files with 54 additions and 19 deletions
|
|
@ -1,6 +1,30 @@
|
||||||
include(Common)
|
|
||||||
include(ExternalProject)
|
include(ExternalProject)
|
||||||
|
|
||||||
|
#
|
||||||
|
# Generate environment variables
|
||||||
|
#
|
||||||
|
set(PATH_SEP ":")
|
||||||
|
if (WIN32)
|
||||||
|
set(PATH_SEP ";")
|
||||||
|
endif (WIN32)
|
||||||
|
|
||||||
|
set(WEBRTC_PATH "${CMAKE_SOURCE_DIR}/Dependencies/depot_tools${PATH_SEP}")
|
||||||
|
if (WIN32)
|
||||||
|
set(WEBRTC_PATH "${WEBRTC_PATH}${CMAKE_SOURCE_DIR}/Dependencies/depot_tools/python276_bin${PATH_SEP}")
|
||||||
|
endif (WIN32)
|
||||||
|
|
||||||
|
set(WEBRTC_PATH "${WEBRTC_PATH}$ENV{PATH}")
|
||||||
|
|
||||||
|
set(WEBRTC_ENV "PATH=${WEBRTC_PATH} PYTHONPATH=${CMAKE_BINARY_DIR}/src/build")
|
||||||
|
if (WIN32)
|
||||||
|
set(WEBRTC_ENV "${WEBRTC_ENV} DEPOT_TOOLS_WIN_TOOLCHAIN=0")
|
||||||
|
endif (WIN32)
|
||||||
|
|
||||||
|
set(WEBRTC_CMD_PREFIX ${CMAKE_COMMAND} -E env \"${WEBRTC_ENV}\")
|
||||||
|
|
||||||
|
#
|
||||||
|
# Download chromium dependencies
|
||||||
|
#
|
||||||
ExternalProject_Add(chromium
|
ExternalProject_Add(chromium
|
||||||
URL ${LIBWEBRTC_CHROMIUM_DEPS}
|
URL ${LIBWEBRTC_CHROMIUM_DEPS}
|
||||||
URL_HASH MD5=${LIBWEBRTC_CHROMIUM_DEPS_HASH}
|
URL_HASH MD5=${LIBWEBRTC_CHROMIUM_DEPS_HASH}
|
||||||
|
|
@ -10,11 +34,14 @@ ExternalProject_Add(chromium
|
||||||
BUILD_COMMAND ""
|
BUILD_COMMAND ""
|
||||||
INSTALL_COMMAND "")
|
INSTALL_COMMAND "")
|
||||||
|
|
||||||
set(GCLIENT_CONFIG_COMMAND
|
#
|
||||||
|
# Retrieve WebRTC source code
|
||||||
|
#
|
||||||
|
set(GCLIENT_CONFIG_COMMAND ${WEBRTC_CMD_PREFIX}
|
||||||
${DEPOTTOOLS_GCLIENT_EXECUTABLE} config --name src
|
${DEPOTTOOLS_GCLIENT_EXECUTABLE} config --name src
|
||||||
https://chromium.googlesource.com/external/webrtc.git)
|
https://chromium.googlesource.com/external/webrtc.git)
|
||||||
|
|
||||||
set(GCLIENT_SYNC_COMMAND
|
set(GCLIENT_SYNC_COMMAND ${WEBRTC_CMD_PREFIX}
|
||||||
${DEPOTTOOLS_GCLIENT_EXECUTABLE} sync
|
${DEPOTTOOLS_GCLIENT_EXECUTABLE} sync
|
||||||
--revision ${LIBWEBRTC_WEBRTC_REVISION} -n -D)
|
--revision ${LIBWEBRTC_WEBRTC_REVISION} -n -D)
|
||||||
|
|
||||||
|
|
@ -22,9 +49,9 @@ if (UNIX AND NOT APPLE)
|
||||||
set(RETRIEVE_SYSROOT_COMMAND ${CMAKE_BINARY_DIR}/src/build/linux/sysroot_scripts/install-sysroot.py --arch=amd64)
|
set(RETRIEVE_SYSROOT_COMMAND ${CMAKE_BINARY_DIR}/src/build/linux/sysroot_scripts/install-sysroot.py --arch=amd64)
|
||||||
endif (UNIX AND NOT APPLE)
|
endif (UNIX AND NOT APPLE)
|
||||||
|
|
||||||
set(UPDATE_CLANG_COMMAND cmake -E env "DEPOT_TOOLS_WIN_TOOLCHAIN=0" ${PYTHON_EXECUTABLE} src/chromium/src/tools/clang/scripts/update.py)
|
set(UPDATE_CLANG_COMMAND ${PYTHON_EXECUTABLE} src/chromium/src/tools/clang/scripts/update.py)
|
||||||
|
|
||||||
set(SETUP_LINKS_COMMAND cmake -E env "DEPOT_TOOLS_WIN_TOOLCHAIN=0" ${PYTHON_EXECUTABLE} src/setup_links.py)
|
set(SETUP_LINKS_COMMAND ${PYTHON_EXECUTABLE} src/setup_links.py)
|
||||||
|
|
||||||
ExternalProject_Add(webrtc-src
|
ExternalProject_Add(webrtc-src
|
||||||
DEPENDS chromium
|
DEPENDS chromium
|
||||||
|
|
@ -71,24 +98,32 @@ if (NOT BUILD_TESTS)
|
||||||
set(LIBWEBRTC_GEN_ARGS ${LIBWEBRTC_GEN_ARGS} rtc_include_tests=false)
|
set(LIBWEBRTC_GEN_ARGS ${LIBWEBRTC_GEN_ARGS} rtc_include_tests=false)
|
||||||
endif (NOT BUILD_TESTS)
|
endif (NOT BUILD_TESTS)
|
||||||
|
|
||||||
set(LIBWEBRTC_GEN_CMD gn gen out/Default --args=\"${LIBWEBRTC_GEN_ARGS}\")
|
add_custom_command(
|
||||||
add_libwebrtc_command(webrtc-generate
|
OUTPUT "Generate"
|
||||||
"Generate"
|
COMMAND ${WEBRTC_CMD_PREFIX} gn gen out/Default --args=\"${LIBWEBRTC_GEN_ARGS}\"
|
||||||
"${LIBWEBRTC_GEN_CMD}"
|
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/src
|
||||||
${CMAKE_BINARY_DIR}/src
|
COMMENT "Generating build files")
|
||||||
"Generating build files"
|
|
||||||
webrtc-src)
|
add_custom_target(
|
||||||
|
webrtc-generate ALL
|
||||||
|
DEPENDS "Generate")
|
||||||
|
|
||||||
|
add_dependencies(webrtc-generate webrtc-src)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Run the build command
|
# Run the build command
|
||||||
#
|
#
|
||||||
set(LIBWEBRTC_BUILD_CMD ninja ${NINJA_ARGS} -C out/Default)
|
add_custom_command(
|
||||||
add_libwebrtc_command(webrtc-ninja
|
OUTPUT "Build"
|
||||||
"Build"
|
COMMAND ${WEBRTC_CMD_PREFIX} ninja ${NINJA_ARGS} -C out/Default
|
||||||
"${LIBWEBRTC_BUILD_CMD}"
|
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/src
|
||||||
${CMAKE_BINARY_DIR}/src
|
COMMENT "Building WebRTC")
|
||||||
"Building WebRTC"
|
|
||||||
webrtc-generate)
|
add_custom_target(
|
||||||
|
webrtc-ninja ALL
|
||||||
|
DEPENDS "Build")
|
||||||
|
|
||||||
|
add_dependencies(webrtc-ninja webrtc-generate)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Link the library
|
# Link the library
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue