build of webrtc test fails on ppc64

RESOLVED FIXED in Firefox 58

Status

()

Core
WebRTC
P4
normal
Rank:
35
RESOLVED FIXED
a month ago
a month ago

People

(Reporter: Dan Horák, Assigned: Dan Horák)

Tracking

Trunk
mozilla58
Points:
---

Firefox Tracking Flags

(firefox58 fixed)

Details

Attachments

(1 attachment, 1 obsolete attachment)

1.16 KB, patch
dminor
: review+
Details | Diff | Splinter Review
(Assignee)

Description

a month ago
Created attachment 8918423 [details]
proposed fix

The webrtc support is enabled by default for both ppc64 and ppc64le architectures, but a build on ppc64 fails in test with

...
/usr/bin/g++ -std=gnu++11 -o Unified_cpp_webrtc_trunk_gtest6.o -c -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/obj-powerpc64-unknown-linux-gnu/dist/system_wrappers -include /home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/config/gcc_hidden.h -DNDEBUG=1 -DTRIMMED=1 -DHAVE_UINT64_T -DWEBRTC_POSIX -DWEBRTC_BUILD_LIBEVENT -DWEBRTC_LINUX -DGTEST_RELATIVE_PATH -DWEBRTC_APM_DEBUG_DUMP -DWEBRTC_INTELLIGIBILITY_ENHANCER=0 -DWEBRTC_MOZILLA_BUILD=1 -DUSE_X11 -DMOZ_HAS_MOZGLUE -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/media/webrtc/trunk/gtest -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/obj-powerpc64-unknown-linux-gnu/media/webrtc/trunk/gtest -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/media/webrtc/trunk -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/ipc/chromium/src -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/media/libopus/celt -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/media/libopus/include -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/media/libopus/src -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/media/libyuv/libyuv/include -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/media/webrtc/trunk/third_party/gflags/gen/posix/include -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/media/webrtc/trunk/third_party/gflags/gen/posix/include/private -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/obj-powerpc64-unknown-linux-gnu/dist/include -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/obj-powerpc64-unknown-linux-gnu/dist/include/nspr -I/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/obj-powerpc64-unknown-linux-gnu/dist/include/nss  -fPIC  -DMOZILLA_CLIENT -include /home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/obj-powerpc64-unknown-linux-gnu/mozilla-config.h -MD -MP -MF .deps/Unified_cpp_webrtc_trunk_gtest6.o.pp  -Wall -Wc++11-compat -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wc++14-compat -Wc++1z-compat -Wduplicated-cond -Wimplicit-fallthrough -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=free-nonheap-object -Wformat -Wformat-overflow=2 -fno-exceptions -fno-strict-aliasing -fno-rtti -fno-exceptions -fno-math-errno -pthread -pipe  -g -freorder-blocks -O2 -fno-omit-frame-pointer  -Wno-error=shadow -Wno-inconsistent-missing-override -Wno-overloaded-virtual   /home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/obj-powerpc64-unknown-linux-gnu/media/webrtc/trunk/gtest/Unified_cpp_webrtc_trunk_gtest6.cpp
In file included from /home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/obj-powerpc64-unknown-linux-gnu/media/webrtc/trunk/gtest/Unified_cpp_webrtc_trunk_gtest6.cpp:38:0:
/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/media/webrtc/trunk/webrtc/modules/audio_processing/test/test_utils.cc:27:2: error: #error "Need to convert samples to little-endian when writing to PCM file"
 #error "Need to convert samples to little-endian when writing to PCM file"
  ^~~~~
In file included from /home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/obj-powerpc64-unknown-linux-gnu/media/webrtc/trunk/gtest/Unified_cpp_webrtc_trunk_gtest6.cpp:83:0:
/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/media/webrtc/trunk/webrtc/modules/audio_processing/utility/delay_estimator_unittest.cc:123:6: warning: ‘void {anonymous}::DelayEstimatorTest::InitBinary()’ defined but not used [-Wunused-function]
 void DelayEstimatorTest::InitBinary() {
      ^~~~~~~~~~~~~~~~~~
cc1plus: warning: unrecognized command line option ‘-Wno-inconsistent-missing-override’
make[5]: *** [/home/jenkins/workspace/Firefox-default/label/ppc64/firefox-src/config/rules.mk:1077: Unified_cpp_webrtc_trunk_gtest6.o] Error 1


The webrtc code itself handles both big and little endian platforms, but seems one little bit is missing in the tests. See attachment for a proposed fix, the logic is copied from webrtc.

Comment 1

a month ago
The fix looks good to me. If you want to create it as a patch I'd be happy to review it and get it landed. Otherwise, I can create a patch and get someone else to review.
(Assignee)

Comment 2

a month ago
Created attachment 8919234 [details] [diff] [review]
proposed fix
Attachment #8918423 - Attachment is obsolete: true
Attachment #8919234 - Flags: review?(dminor)
Assignee: nobody → dan
Status: UNCONFIRMED → ASSIGNED
Rank: 35
Ever confirmed: true
Priority: -- → P4

Comment 3

a month ago
Comment on attachment 8919234 [details] [diff] [review]
proposed fix

Review of attachment 8919234 [details] [diff] [review]:
-----------------------------------------------------------------

lgtm, I will land this for you. Thanks for the patch!
Attachment #8919234 - Flags: review?(dminor) → review+

Comment 4

a month ago
Pushed by dminor@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/813590fb620c
Implement WriteSamples in tests for big endian platforms; r=dminor

Comment 5

a month ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/813590fb620c
Status: ASSIGNED → RESOLVED
Last Resolved: a month ago
status-firefox58: --- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla58
You need to log in before you can comment on or make changes to this bug.