This commit allows different branches of WebRTC to be built.
Main differences with implementation in 730b7fd55f0cd255b177d3c20045fe021474a636:
WEBRTC_BRANCH_HEAD now only require the branch number e.g. 58
WebRTC is now cloned during the main configure rather than in the download/configure steps of the webrtc-src external project. This allows to find out which branch is being built when building with the -DWEBRTC_REVISION option.
LIBWEBRTC_VERSION is now suffixed with +${WEBRTC_BRANCH_HEAD}-${WEBRTC_REVISION} e.g. 1.0.0-9-g13f0747+60-6294a7eb71c891e9ea41273a7a94113f6802d0da
Part of the code is now conditional on ${WEBRTC_BRANCH_HEAD} value
Known issues (which are not regressions):
WebRTC branch 59 build fails on Windows x64 because of missing symbols (libjpeg-turbo symbols built with yasm). No path is shown for those objects when they are built and I don't have a Windows setup to investigate further.
WebRTC branch 61 build fails on Linux (at least x64) because of a C++ ABI incompatibility.
/home/travis/build/mayeut/libwebrtc/sample/main.cpp:48: undefined reference to `rtc::Thread::SetName(std::string const&, void const*)'
/home/travis/build/mayeut/libwebrtc/sample/main.cpp:49: undefined reference to `rtc::Thread::SetName(std::string const&, void const*)'
This symbol is defined as _ZN3rtc6Thread7SetNameERKSsPKv in main.o and as _ZN3rtc6Thread7SetNameERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKv in libwebrtc.a (seems like libstdc++ vs libc++)
This commit allows different branches of WebRTC to be built.
Main differences with implementation in 730b7fd55f0cd255b177d3c20045fe021474a636:
WEBRTC_BRANCH_HEAD
now only require the branch number e.g.58
WebRTC is now cloned during the main
configure
rather than in thedownload
/configure
steps of thewebrtc-src
external project. This allows to find out which branch is being built when building with the-DWEBRTC_REVISION
option.LIBWEBRTC_VERSION
is now suffixed with+${WEBRTC_BRANCH_HEAD}-${WEBRTC_REVISION}
e.g.1.0.0-9-g13f0747+60-6294a7eb71c891e9ea41273a7a94113f6802d0da
Part of the code is now conditional on
${WEBRTC_BRANCH_HEAD}
valueKnown issues (which are not regressions):
This symbol is defined as
_ZN3rtc6Thread7SetNameERKSsPKv
inmain.o
and as_ZN3rtc6Thread7SetNameERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEPKv
inlibwebrtc.a
(seems likelibstdc++
vslibc++
)Some builds are visible here (branches 57 to 61): https://travis-ci.org/mayeut/libwebrtc/builds/266494102 https://ci.appveyor.com/project/mayeut/libwebrtc/build/1.0.21