firefox build failure

Hi all,
I am a newbie trying to build mozilla-central on debian/Buster but I am 
running into a compiler error.  I have run bootstrap.py and have the 
pulled and updated as of this email.  I am running "./mach -v -log 
buildlog build" and I am getting the following

> [1578780962.160171, "build_output", {"line": "\u001b[1m/mozilla-central/security/sandbox/common/test/SandboxTest.cpp:48:21: \u001b[0m\u001b[0;1;31merror: \u001b[0m\u001b[1mno member named 'SendInitSandboxTesting' in 'mozilla::gfx::GPUChild'\u001b[0m"}]
> [1578780962.160445, "build_output", {"line": "  Unused << aActor->SendInitSandboxTesting(std::move(sandboxTestingChildEnd));"}]
> [1578780962.160688, "build_output", {"line": "\u001b[0;1;32m            ~~~~~~  ^"}]
> [1578780962.160957, "build_output", {"line": "\u001b[0m\u001b[1m/mozilla-central/security/sandbox/common/test/SandboxTest.cpp:82:40: \u001b[0m\u001b[0;1;30mnote: \u001b[0min instantiation of function template specialization 'mozilla::InitializeSandboxTestingActors<mozilla::gfx::GPUChild>' requested here\u001b[0m"}]
> [1578780962.16122, "build_output", {"line": "        mSandboxTestingParents[type] = InitializeSandboxTestingActors(gpuChild);"}]
> [1578780962.161462, "build_output", {"line": "\u001b[0;1;32m                                       ^"}]
> [1578780962.237311, "build_output", {"line": "\u001b[0m1 error generated."}]

What am I doing wrong?

thanks,
Dave
0
Dave
1/12/2020 1:30:15 AM
mozilla.dev.builds 1759 articles. 0 followers. Post Follow

6 Replies
83 Views

Similar Articles

[PageSpeed] 37

Hi Dave,

On Sat, Jan 11, 2020 at 8:35 PM Dave <dtyx265@gmail.com> wrote:
> I am a newbie trying to build mozilla-central on debian/Buster but I am
> running into a compiler error.  I have run bootstrap.py and have the
> pulled and updated as of this email.  I am running "./mach -v -log
> buildlog build"

I assume you mean "-l" or "--log-file" rather than "-log"

> and I am getting the following
> [...]

Is that the only error in the build output? It might be helpful to
attach the complete build output (preferably, directly from
stdout/stderr rather than the log file, so it's easier to read).

Also, are you specifying any non-default configuration in a .mozconfig
file or elsewhere? The file containing this error (SandboxTest.cpp)
should only be built during a debug build, so are you specifying a
debug build somewhere?

Cheers,
Botond
0
Botond
1/12/2020 2:05:59 AM
This is a multi-part message in MIME format.
--------------B0EC6E7FFC02F2E0D153AE68
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit

On 1/11/20 6:05 PM, Botond Ballo wrote:
> Hi Dave,
> 
> On Sat, Jan 11, 2020 at 8:35 PM Dave <dtyx265@gmail.com> wrote:
>> I am a newbie trying to build mozilla-central on debian/Buster but I am
>> running into a compiler error.  I have run bootstrap.py and have the
>> pulled and updated as of this email.  I am running "./mach -v -log
>> buildlog build"
> 
> I assume you mean "-l" or "--log-file" rather than "-log"
> 
>> and I am getting the following
>> [...]
> 
> Is that the only error in the build output? It might be helpful to
> attach the complete build output (preferably, directly from
> stdout/stderr rather than the log file, so it's easier to read).
> 
> Also, are you specifying any non-default configuration in a .mozconfig
> file or elsewhere? The file containing this error (SandboxTest.cpp)
> should only be built during a debug build, so are you specifying a
> debug build somewhere?
> 
> Cheers,
> Botond
> 

stdout/stderr output attached...

--------------B0EC6E7FFC02F2E0D153AE68
Content-Type: text/plain; charset=UTF-8;
 name="buildlog"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
 filename="buildlog"

IDA6MDAuNTggQ2xvYmJlciBub3QgbmVlZGVkLgogMDowMC42MCBBZGRpbmcgbWFrZSBvcHRp
b25zIGZyb20gL2hvbWUvc2hha2V6dWxhL1dvcmsvRmlyZWZveC9tb3ppbGxhLWNlbnRyYWwv
Lm1vemNvbmZpZwogICAgTU9aX01BS0VfRkxBR1M9LWoxCiAgICBNT1pfT0JKRElSPS9ob21l
L3NoYWtlenVsYS9Xb3JrL0ZpcmVmb3gvbW96aWxsYS1jZW50cmFsL29iai14ODZfNjQtcGMt
bGludXgtZ251CiAgICBPQkpESVI9L2hvbWUvc2hha2V6dWxhL1dvcmsvRmlyZWZveC9tb3pp
bGxhLWNlbnRyYWwvb2JqLXg4Nl82NC1wYy1saW51eC1nbnUKICAgIEZPVU5EX01PWkNPTkZJ
Rz0vaG9tZS9zaGFrZXp1bGEvV29yay9GaXJlZm94L21vemlsbGEtY2VudHJhbC8ubW96Y29u
ZmlnCiAgICBleHBvcnQgRk9VTkRfTU9aQ09ORklHCiAwOjAwLjYwIC91c3IvYmluL21ha2Ug
LWYgY2xpZW50Lm1rIE1PWl9QQVJBTExFTF9CVUlMRD0xIC1zCiAwOjAwLjYwIEVudmlyb25t
ZW50OiB7J0dMQURFX1BJWE1BUF9QQVRIJzogJzonLCAnWERHX0dSRUVURVJfREFUQV9ESVIn
OiAnL3Zhci9saWIvbGlnaHRkbS9kYXRhL3NoYWtlenVsYScsIHUnVE9QU1JDRElSJzogJy9o
b21lL3NoYWtlenVsYS9Xb3JrL0ZpcmVmb3gvbW96aWxsYS1jZW50cmFsJywgJ1hER19DVVJS
RU5UX0RFU0tUT1AnOiAnWEZDRScsICdYREdfU0VTU0lPTl9UWVBFJzogJ3gxMScsICdMT0dO
QU1FJzogJ3NoYWtlenVsYScsICdYREdfU0VBVCc6ICdzZWF0MCcsICdIT01FJzogJy9ob21l
L3NoYWtlenVsYScsICdYREdfVlROUic6ICc3JywgJ1BBVEgnOiAnL2hvbWUvc2hha2V6dWxh
Ly5jYXJnby9iaW46L3Vzci9sb2NhbC9iaW46L3Vzci9iaW46L2JpbjovdXNyL2xvY2FsL2dh
bWVzOi91c3IvZ2FtZXM6fi9iaW4nLCAnUFMxJzogJ1xcW1xcMDMzWzAxOzMybVxcXVxcdFxc
dz5cXFtcXDAzM1swMG1cXF0nLCAnRElTUExBWSc6ICc6MC4wJywgJ1NTSF9BR0VOVF9QSUQn
OiAnMTMwOCcsICdMQU5HJzogJ2VuX1VTLnV0ZjgnLCAnVEVSTSc6ICd4dGVybS0yNTZjb2xv
cicsICdTSEVMTCc6ICcvYmluL2Jhc2gnLCAnWERHX1NFU1NJT05fUEFUSCc6ICcvb3JnL2Zy
ZWVkZXNrdG9wL0Rpc3BsYXlNYW5hZ2VyL1Nlc3Npb24wJywgJ1hBVVRIT1JJVFknOiAnL2hv
bWUvc2hha2V6dWxhLy5YYXV0aG9yaXR5JywgJ1NFU1NJT05fTUFOQUdFUic6ICdsb2NhbC9z
aGFrZXRvcDpAL3RtcC8uSUNFLXVuaXgvMTMxOCx1bml4L3NoYWtldG9wOi90bXAvLklDRS11
bml4LzEzMTgnLCAnU0hMVkwnOiAnMScsICdHTEFERV9NT0RVTEVfUEFUSCc6ICc6JywgJ1FU
X0FDQ0VTU0lCSUxJVFknOiAnMScsICdXSU5ET1dJRCc6ICc2MjkxNDU2MycsICdHTEFERV9D
QVRBTE9HX1BBVEgnOiAnOicsIHUnT0JKRElSJzogdScvaG9tZS9zaGFrZXp1bGEvV29yay9G
aXJlZm94L21vemlsbGEtY2VudHJhbC9vYmoteDg2XzY0LXBjLWxpbnV4LWdudScsICdYREdf
U0VTU0lPTl9DTEFTUyc6ICd1c2VyJywgJ0NPTE9SVEVSTSc6ICd0cnVlY29sb3InLCAnWERH
X1NFU1NJT05fREVTS1RPUCc6ICdsaWdodGRtLXhzZXNzaW9uJywgJ1hER19SVU5USU1FX0RJ
Uic6ICcvcnVuL3VzZXIvMTAwMCcsICdTU0hfQVVUSF9TT0NLJzogJy90bXAvc3NoLU56UlZq
d1YyNVVsUS9hZ2VudC4xMjUxJywgJ1ZURV9WRVJTSU9OJzogJzU0MDInLCAnR0RNU0VTU0lP
Tic6ICdsaWdodGRtLXhzZXNzaW9uJywgJ1hER19TRUFUX1BBVEgnOiAnL29yZy9mcmVlZGVz
a3RvcC9EaXNwbGF5TWFuYWdlci9TZWF0MCcsIHUnQ09ORklHX0dVRVNTJzogdSd4ODZfNjQt
cGMtbGludXgtZ251JywgJ1hER19TRVNTSU9OX0lEJzogJzInLCAnREJVU19TRVNTSU9OX0JV
U19BRERSRVNTJzogJ3VuaXg6cGF0aD0vcnVuL3VzZXIvMTAwMC9idXMnLCAnXyc6ICcuL21h
Y2gnLCAnTUFDSCc6IHUnMScsICdERVNLVE9QX1NFU1NJT04nOiAnbGlnaHRkbS14c2Vzc2lv
bicsICdYREdfQ09ORklHX0RJUlMnOiAnL2V0Yy94ZGcnLCAnR1RLX01PRFVMRVMnOiAnZ2Fp
bDphdGstYnJpZGdlJywgJ09MRFBXRCc6ICcvaG9tZS9zaGFrZXp1bGEnLCAnQ0FMSUJSRV9U
RU1QX0RJUic6ICcvaG9tZS9zaGFrZXp1bGEvdG1wLycsICdYREdfREFUQV9ESVJTJzogJy91
c3Ivc2hhcmUveGZjZTQ6L3Vzci9sb2NhbC9zaGFyZS86L3Vzci9zaGFyZS86L3Vzci9zaGFy
ZScsICdQV0QnOiAnL2hvbWUvc2hha2V6dWxhL1dvcmsvRmlyZWZveC9tb3ppbGxhLWNlbnRy
YWwnLCAnTUFDSF9NQUlOX1BJRCc6ICcyNjc4OScsICdYREdfTUVOVV9QUkVGSVgnOiAneGZj
ZS0nLCAnTFNfQ09MT1JTJzogJ3JzPTA6ZGk9MDE7MzQ6bG49MDE7MzY6bWg9MDA6cGk9NDA7
MzM6c289MDE7MzU6ZG89MDE7MzU6YmQ9NDA7MzM7MDE6Y2Q9NDA7MzM7MDE6b3I9NDA7MzE7
MDE6bWk9MDA6c3U9Mzc7NDE6c2c9MzA7NDM6Y2E9MzA7NDE6dHc9MzA7NDI6b3c9MzQ7NDI6
c3Q9Mzc7NDQ6ZXg9MDE7MzI6Ki50YXI9MDE7MzE6Ki50Z3o9MDE7MzE6Ki5hcmM9MDE7MzE6
Ki5hcmo9MDE7MzE6Ki50YXo9MDE7MzE6Ki5saGE9MDE7MzE6Ki5sejQ9MDE7MzE6Ki5semg9
MDE7MzE6Ki5sem1hPTAxOzMxOioudGx6PTAxOzMxOioudHh6PTAxOzMxOioudHpvPTAxOzMx
OioudDd6PTAxOzMxOiouemlwPTAxOzMxOiouej0wMTszMToqLmR6PTAxOzMxOiouZ3o9MDE7
MzE6Ki5scno9MDE7MzE6Ki5sej0wMTszMToqLmx6bz0wMTszMToqLnh6PTAxOzMxOiouenN0
PTAxOzMxOioudHpzdD0wMTszMToqLmJ6Mj0wMTszMToqLmJ6PTAxOzMxOioudGJ6PTAxOzMx
OioudGJ6Mj0wMTszMToqLnR6PTAxOzMxOiouZGViPTAxOzMxOioucnBtPTAxOzMxOiouamFy
PTAxOzMxOioud2FyPTAxOzMxOiouZWFyPTAxOzMxOiouc2FyPTAxOzMxOioucmFyPTAxOzMx
OiouYWx6PTAxOzMxOiouYWNlPTAxOzMxOiouem9vPTAxOzMxOiouY3Bpbz0wMTszMToqLjd6
PTAxOzMxOioucno9MDE7MzE6Ki5jYWI9MDE7MzE6Ki53aW09MDE7MzE6Ki5zd209MDE7MzE6
Ki5kd209MDE7MzE6Ki5lc2Q9MDE7MzE6Ki5qcGc9MDE7MzU6Ki5qcGVnPTAxOzM1OioubWpw
Zz0wMTszNToqLm1qcGVnPTAxOzM1OiouZ2lmPTAxOzM1OiouYm1wPTAxOzM1OioucGJtPTAx
OzM1OioucGdtPTAxOzM1OioucHBtPTAxOzM1OioudGdhPTAxOzM1OioueGJtPTAxOzM1Oiou
eHBtPTAxOzM1OioudGlmPTAxOzM1OioudGlmZj0wMTszNToqLnBuZz0wMTszNToqLnN2Zz0w
MTszNToqLnN2Z3o9MDE7MzU6Ki5tbmc9MDE7MzU6Ki5wY3g9MDE7MzU6Ki5tb3Y9MDE7MzU6
Ki5tcGc9MDE7MzU6Ki5tcGVnPTAxOzM1OioubTJ2PTAxOzM1OioubWt2PTAxOzM1Oioud2Vi
bT0wMTszNToqLm9nbT0wMTszNToqLm1wND0wMTszNToqLm00dj0wMTszNToqLm1wNHY9MDE7
MzU6Ki52b2I9MDE7MzU6Ki5xdD0wMTszNToqLm51dj0wMTszNToqLndtdj0wMTszNToqLmFz
Zj0wMTszNToqLnJtPTAxOzM1Oioucm12Yj0wMTszNToqLmZsYz0wMTszNToqLmF2aT0wMTsz
NToqLmZsaT0wMTszNToqLmZsdj0wMTszNToqLmdsPTAxOzM1OiouZGw9MDE7MzU6Ki54Y2Y9
MDE7MzU6Ki54d2Q9MDE7MzU6Ki55dXY9MDE7MzU6Ki5jZ209MDE7MzU6Ki5lbWY9MDE7MzU6
Ki5vZ3Y9MDE7MzU6Ki5vZ3g9MDE7MzU6Ki5hYWM9MDA7MzY6Ki5hdT0wMDszNjoqLmZsYWM9
MDA7MzY6Ki5tNGE9MDA7MzY6Ki5taWQ9MDA7MzY6Ki5taWRpPTAwOzM2OioubWthPTAwOzM2
OioubXAzPTAwOzM2OioubXBjPTAwOzM2Oioub2dnPTAwOzM2OioucmE9MDA7MzY6Ki53YXY9
MDA7MzY6Ki5vZ2E9MDA7MzY6Ki5vcHVzPTAwOzM2Oiouc3B4PTAwOzM2OioueHNwZj0wMDsz
NjonLCAnVVNFUic6ICdzaGFrZXp1bGEnfQogMDoxNC44OSBFbGFwc2VkOiAxMy42OHM7IEZy
b20gZGlzdC9pbmNsdWRlOiBLZXB0IDYwNTMgZXhpc3Rpbmc7IEFkZGVkL3VwZGF0ZWQgMDsg
UmVtb3ZlZCAwIGZpbGVzIGFuZCAwIGRpcmVjdG9yaWVzLgogMDoxNS4wNyBFbGFwc2VkOiAw
LjAzczsgRnJvbSBkaXN0L3B1YmxpYzogS2VwdCAwIGV4aXN0aW5nOyBBZGRlZC91cGRhdGVk
IDA7IFJlbW92ZWQgMCBmaWxlcyBhbmQgMCBkaXJlY3Rvcmllcy4KIDA6MTUuMjAgRWxhcHNl
ZDogMC4wMXM7IEZyb20gZGlzdC9wcml2YXRlOiBLZXB0IDAgZXhpc3Rpbmc7IEFkZGVkL3Vw
ZGF0ZWQgMDsgUmVtb3ZlZCAwIGZpbGVzIGFuZCAwIGRpcmVjdG9yaWVzLgogMDoxNS40NiBF
bGFwc2VkOiAwLjEzczsgRnJvbSBkaXN0L3hwaS1zdGFnZTogS2VwdCA4OCBleGlzdGluZzsg
QWRkZWQvdXBkYXRlZCAwOyBSZW1vdmVkIDAgZmlsZXMgYW5kIDAgZGlyZWN0b3JpZXMuCiAw
OjE3LjMwIEVsYXBzZWQ6IDEuNzFzOyBGcm9tIF90ZXN0czogS2VwdCAxMTk0IGV4aXN0aW5n
OyBBZGRlZC91cGRhdGVkIDA7IFJlbW92ZWQgMCBmaWxlcyBhbmQgMCBkaXJlY3Rvcmllcy4K
IDA6MjUuMTYgRWxhcHNlZDogNy43M3M7IEZyb20gZGlzdC9iaW46IEtlcHQgMjcxNyBleGlz
dGluZzsgQWRkZWQvdXBkYXRlZCAwOyBSZW1vdmVkIDAgZmlsZXMgYW5kIDAgZGlyZWN0b3Jp
ZXMuCiAwOjI1LjIyIC4vYnVpbGRpZC5oLnN0dWIKIDA6MjUuNjEgLi9zb3VyY2UtcmVwby5o
LnN0dWIKIDA6MjguOTYgYnVpbGQvYXBwbGljYXRpb24uaW5pLnN0dWIKIDA6MjkuMTMgYnVp
bGQvYXBwbGljYXRpb24uaW5pLmguc3R1YgogMDozMS43MCB0b29sa2l0L2xpYnJhcnkvcnVz
dC9mb3JjZS1jYXJnby1saWJyYXJ5LWJ1aWxkCiAwOjQ5LjI5ICAgICBGaW5pc2hlZCBkZXYg
W29wdGltaXplZCArIGRlYnVnaW5mb10gdGFyZ2V0KHMpIGluIDE3LjI5cwogMDo0OS41MyB0
b29sa2l0L2NyYXNocmVwb3J0ZXIvcnVzdC9mb3JjZS1jYXJnby1ob3N0LWxpYnJhcnktYnVp
bGQKIDA6NTEuMjggICAgIEZpbmlzaGVkIGRldiBbb3B0aW1pemVkICsgZGVidWdpbmZvXSB0
YXJnZXQocykgaW4gMS43NHMKIDA6NTEuNDQgdGVzdGluZy9nZWNrb2RyaXZlci9mb3JjZS1j
YXJnby1wcm9ncmFtLWJ1aWxkCiAwOjU0LjUwICAgICBGaW5pc2hlZCBkZXYgW29wdGltaXpl
ZCArIGRlYnVnaW5mb10gdGFyZ2V0KHMpIGluIDMuMDVzCiAxOjAwLjMyIHNlY3VyaXR5L3Nh
bmRib3gvY29tbW9uCiAxOjI3LjQ5IEluIGZpbGUgaW5jbHVkZWQgZnJvbSBVbmlmaWVkX2Nw
cF9zYW5kYm94X2NvbW1vbjAuY3BwOjExOgogMToyNy41MCAvaG9tZS9zaGFrZXp1bGEvV29y
ay9GaXJlZm94L21vemlsbGEtY2VudHJhbC9zZWN1cml0eS9zYW5kYm94L2NvbW1vbi90ZXN0
L1NhbmRib3hUZXN0LmNwcDo0ODoyMTogZXJyb3I6IG5vIG1lbWJlciBuYW1lZCAnU2VuZElu
aXRTYW5kYm94VGVzdGluZycgaW4gJ21vemlsbGE6OmdmeDo6R1BVQ2hpbGQnCiAxOjI3LjUw
ICAgVW51c2VkIDw8IGFBY3Rvci0+U2VuZEluaXRTYW5kYm94VGVzdGluZyhzdGQ6Om1vdmUo
c2FuZGJveFRlc3RpbmdDaGlsZEVuZCkpOwogMToyNy41MCAgICAgICAgICAgICB+fn5+fn4g
IF4KIDE6MjcuNTAgL2hvbWUvc2hha2V6dWxhL1dvcmsvRmlyZWZveC9tb3ppbGxhLWNlbnRy
YWwvc2VjdXJpdHkvc2FuZGJveC9jb21tb24vdGVzdC9TYW5kYm94VGVzdC5jcHA6ODI6NDA6
IG5vdGU6IGluIGluc3RhbnRpYXRpb24gb2YgZnVuY3Rpb24gdGVtcGxhdGUgc3BlY2lhbGl6
YXRpb24gJ21vemlsbGE6OkluaXRpYWxpemVTYW5kYm94VGVzdGluZ0FjdG9yczxtb3ppbGxh
OjpnZng6OkdQVUNoaWxkPicgcmVxdWVzdGVkIGhlcmUKIDE6MjcuNTAgICAgICAgICBtU2Fu
ZGJveFRlc3RpbmdQYXJlbnRzW3R5cGVdID0gSW5pdGlhbGl6ZVNhbmRib3hUZXN0aW5nQWN0
b3JzKGdwdUNoaWxkKTsKIDE6MjcuNTAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXgogMToyNy41NyAxIGVycm9yIGdlbmVyYXRlZC4KIDE6MjcuNjggbWFrZVs0
XTogKioqIFsvaG9tZS9zaGFrZXp1bGEvV29yay9GaXJlZm94L21vemlsbGEtY2VudHJhbC9j
b25maWcvcnVsZXMubWs6NzQ2OiBVbmlmaWVkX2NwcF9zYW5kYm94X2NvbW1vbjAub10gRXJy
b3IgMQogMToyNy42OCBtYWtlWzNdOiAqKiogWy9ob21lL3NoYWtlenVsYS9Xb3JrL0ZpcmVm
b3gvbW96aWxsYS1jZW50cmFsL2NvbmZpZy9yZWN1cnNlLm1rOjc0OiBzZWN1cml0eS9zYW5k
Ym94L2NvbW1vbi90YXJnZXQtb2JqZWN0c10gRXJyb3IgMgogMToyNy42OCBtYWtlWzJdOiAq
KiogWy9ob21lL3NoYWtlenVsYS9Xb3JrL0ZpcmVmb3gvbW96aWxsYS1jZW50cmFsL2NvbmZp
Zy9yZWN1cnNlLm1rOjM0OiBjb21waWxlXSBFcnJvciAyCiAxOjI3LjY4IG1ha2VbMV06ICoq
KiBbL2hvbWUvc2hha2V6dWxhL1dvcmsvRmlyZWZveC9tb3ppbGxhLWNlbnRyYWwvY29uZmln
L3J1bGVzLm1rOjM5NDogZGVmYXVsdF0gRXJyb3IgMgogMToyNy42OCBtYWtlOiAqKiogW2Ns
aWVudC5tazoxMjU6IGJ1aWxkXSBFcnJvciAyCiAxOjI3LjY4IDE3MiBjb21waWxlciB3YXJu
aW5ncyBwcmVzZW50Lgo=
--------------B0EC6E7FFC02F2E0D153AE68--
0
Dave
1/12/2020 2:42:00 AM
Could you post the generated header file
mozilla-central/obj-x86_64-pc-linux-gnu/ipc/ipdl/_ipdlheaders/mozilla/gfx/PGPUChild.h
?

Thanks,
Botond
0
Botond
1/12/2020 2:55:11 AM
This is a multi-part message in MIME format.
--------------B2E1259F4319D6AB75C42A8C
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit

On 1/11/20 6:55 PM, Botond Ballo wrote:
> Could you post the generated header file
> mozilla-central/obj-x86_64-pc-linux-gnu/ipc/ipdl/_ipdlheaders/mozilla/gfx/PGPUChild.h
> ?
> 
> Thanks,
> Botond
> 
The file is attached.

--------------B2E1259F4319D6AB75C42A8C
Content-Type: text/x-chdr; charset=UTF-8;
 name="PGPUChild.h"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="PGPUChild.h"

//
// Automatically generated by ipdlc.
// Edit at your own risk
//

#ifndef PGPUChild_h
#define PGPUChild_h

#include "mozilla/gfx/PGPU.h"
#ifdef DEBUG
#include "prenv.h"
#endif  // DEBUG

#include "base/id_map.h"
#include "mozilla/ipc/MessageChannel.h"
#include "mozilla/ipc/ProtocolUtils.h"
#include "mozilla/WeakPtr.h"
// Headers for things that cannot be forward declared
#include "base/process.h"
#include "gfxFallback.h"
#include "gfxFeature.h"
#include "mozilla/TelemetryComms.h"
#include "mozilla/dom/TabMessageUtils.h"
#include "mozilla/layers/LayersTypes.h"

namespace mozilla {
namespace layers {
class PAPZInputBridgeChild;
} // namespace layers
} // namespace mozilla
namespace mozilla {
namespace layers {
class PAPZInputBridgeParent;
} // namespace layers
} // namespace mozilla

namespace mozilla {
namespace layers {
class PCompositorManagerChild;
} // namespace layers
} // namespace mozilla
namespace mozilla {
namespace layers {
class PCompositorManagerParent;
} // namespace layers
} // namespace mozilla

namespace mozilla {
namespace layers {
class PImageBridgeChild;
} // namespace layers
} // namespace mozilla
namespace mozilla {
namespace layers {
class PImageBridgeParent;
} // namespace layers
} // namespace mozilla

namespace mozilla {
class PProfilerChild;
} // namespace mozilla
namespace mozilla {
class PProfilerParent;
} // namespace mozilla

namespace mozilla {
namespace gfx {
class PVRGPUChild;
} // namespace gfx
} // namespace mozilla
namespace mozilla {
namespace gfx {
class PVRGPUParent;
} // namespace gfx
} // namespace mozilla

namespace mozilla {
namespace gfx {
class PVRManagerChild;
} // namespace gfx
} // namespace mozilla
namespace mozilla {
namespace gfx {
class PVRManagerParent;
} // namespace gfx
} // namespace mozilla

namespace mozilla {
namespace layers {
class PVideoBridgeChild;
} // namespace layers
} // namespace mozilla
namespace mozilla {
namespace layers {
class PVideoBridgeParent;
} // namespace layers
} // namespace mozilla

namespace mozilla {
namespace gfx {
class PVsyncBridgeChild;
} // namespace gfx
} // namespace mozilla
namespace mozilla {
namespace gfx {
class PVsyncBridgeParent;
} // namespace gfx
} // namespace mozilla

namespace mozilla {
namespace layers {
class PUiCompositorControllerChild;
} // namespace layers
} // namespace mozilla
namespace mozilla {
namespace layers {
class PUiCompositorControllerParent;
} // namespace layers
} // namespace mozilla

namespace mozilla {
class PRemoteDecoderManagerChild;
} // namespace mozilla
namespace mozilla {
class PRemoteDecoderManagerParent;
} // namespace mozilla

namespace mozilla {
namespace layers {
class PAPZInputBridgeChild;
} // namespace layers
} // namespace mozilla

namespace mozilla {
namespace gfx {


class PGPUChild :
    public mozilla::ipc::IToplevelProtocol,
    public SupportsWeakPtr<PGPUChild>
{
public:
    MOZ_DECLARE_WEAKREFERENCE_TYPENAME(PGPUChild)
private:
    friend class mozilla::layers::PAPZInputBridgeChild;
protected:
    typedef mozilla::ipc::ActorHandle ActorHandle;
    typedef mozilla::gfx::BackendType BackendType;
    typedef mozilla::ipc::ByteBuf ByteBuf;
    typedef mozilla::Telemetry::ChildEventData ChildEventData;
    typedef mozilla::gfx::ContentDeviceData ContentDeviceData;
    typedef mozilla::gfx::D3D11DeviceStatus D3D11DeviceStatus;
    typedef mozilla::gfx::DevicePrefs DevicePrefs;
    typedef mozilla::Telemetry::DiscardedData DiscardedData;
    template<class FooSide> using Endpoint = mozilla::ipc::Endpoint<FooSide>;
    typedef mozilla::gfx::Fallback Fallback;
    typedef mozilla::gfx::Feature Feature;
    typedef mozilla::gfx::FeatureFailure FeatureFailure;
    typedef mozilla::gfx::FeatureStatus FeatureStatus;
    typedef mozilla::ipc::FileDescriptor FileDescriptor;
    typedef mozilla::gfx::GPUDeviceData GPUDeviceData;
    typedef mozilla::gfx::GfxVarUpdate GfxVarUpdate;
    typedef mozilla::gfx::GfxVarValue GfxVarValue;
    typedef mozilla::HangAnnotation HangAnnotation;
    typedef mozilla::HangDetails HangDetails;
    typedef mozilla::HangEntry HangEntry;
    typedef mozilla::HangEntryBufOffset HangEntryBufOffset;
    typedef mozilla::HangEntryChromeScript HangEntryChromeScript;
    typedef mozilla::HangEntryContent HangEntryContent;
    typedef mozilla::HangEntryJit HangEntryJit;
    typedef mozilla::HangEntryModOffset HangEntryModOffset;
    typedef mozilla::HangEntryProgCounter HangEntryProgCounter;
    typedef mozilla::HangEntrySuppressed HangEntrySuppressed;
    typedef mozilla::HangEntryWasm HangEntryWasm;
    typedef mozilla::HangModule HangModule;
    typedef mozilla::HangStack HangStack;
    typedef mozilla::Telemetry::HistogramAccumulation HistogramAccumulation;
    typedef mozilla::gfx::IntSize IntSize;
    typedef mozilla::Telemetry::KeyedHistogramAccumulation KeyedHistogramAccumulation;
    typedef mozilla::Telemetry::KeyedScalarAction KeyedScalarAction;
    typedef mozilla::gfx::LayerTreeIdMapping LayerTreeIdMapping;
    typedef mozilla::layers::LayersId LayersId;
    template<class FooSide> using ManagedEndpoint = mozilla::ipc::ManagedEndpoint<FooSide>;
    typedef mozilla::dom::MemoryReport MemoryReport;
    typedef mozilla::dom::NativeThreadId NativeThreadId;
    typedef mozilla::dom::Pref Pref;
    typedef mozilla::dom::PrefValue PrefValue;
    typedef base::ProcessId ProcessId;
    typedef mozilla::ipc::ProtocolId ProtocolId;
    typedef mozilla::ipc::ResponseRejectReason ResponseRejectReason;
    typedef mozilla::Telemetry::ScalarAction ScalarAction;
    typedef mozilla::ipc::Shmem Shmem;
    typedef mozilla::TimeDuration TimeDuration;
    typedef mozilla::ipc::Transport Transport;
    typedef mozilla::ipc::TransportDescriptor TransportDescriptor;
    template<class T> using UniquePtr = mozilla::UniquePtr<T>;
    typedef mozilla::gfx::D3D11Checks::VideoFormatOption VideoFormatOption;
    typedef mozilla::gfx::D3D11Checks::VideoFormatOptionSet VideoFormatOptionSet;
    typedef mozilla::null_t null_t;
    typedef mozilla::void_t void_t;
    typedef mozilla::layers::PAPZInputBridgeChild PAPZInputBridgeChild;
    typedef mozilla::layers::PAPZInputBridgeParent PAPZInputBridgeParent;
    typedef mozilla::layers::PCompositorManagerChild PCompositorManagerChild;
    typedef mozilla::layers::PCompositorManagerParent PCompositorManagerParent;
    typedef mozilla::layers::PImageBridgeChild PImageBridgeChild;
    typedef mozilla::layers::PImageBridgeParent PImageBridgeParent;
    typedef mozilla::PProfilerChild PProfilerChild;
    typedef mozilla::PProfilerParent PProfilerParent;
    typedef mozilla::gfx::PVRGPUChild PVRGPUChild;
    typedef mozilla::gfx::PVRGPUParent PVRGPUParent;
    typedef mozilla::gfx::PVRManagerChild PVRManagerChild;
    typedef mozilla::gfx::PVRManagerParent PVRManagerParent;
    typedef mozilla::layers::PVideoBridgeChild PVideoBridgeChild;
    typedef mozilla::layers::PVideoBridgeParent PVideoBridgeParent;
    typedef mozilla::gfx::PVsyncBridgeChild PVsyncBridgeChild;
    typedef mozilla::gfx::PVsyncBridgeParent PVsyncBridgeParent;
    typedef mozilla::layers::PUiCompositorControllerChild PUiCompositorControllerChild;
    typedef mozilla::layers::PUiCompositorControllerParent PUiCompositorControllerParent;
    typedef mozilla::PRemoteDecoderManagerChild PRemoteDecoderManagerChild;
    typedef mozilla::PRemoteDecoderManagerParent PRemoteDecoderManagerParent;

public:
    typedef MozPromise<nsCString, ResponseRejectReason, true> CollectPerfStatsJSONPromise;

protected:
    void
    ProcessingError(
            Result aCode,
            const char* aReason) override;
    bool
    ShouldContinueFromReplyTimeout() override;
    void
    EnteredCxxStack() override;
    void
    ExitedCxxStack() override;
    void
    EnteredCall() override;
    void
    ExitedCall() override;

public:
    typedef mozilla::ipc::IProtocol IProtocol;
    typedef IPC::Message Message;
    typedef base::ProcessHandle ProcessHandle;
    typedef mozilla::ipc::MessageChannel MessageChannel;
    typedef mozilla::ipc::SharedMemory SharedMemory;

public:
    MOZ_IMPLICIT PGPUChild();

    virtual ~PGPUChild();

public:
    void
    ManagedPAPZInputBridgeChild(nsTArray<PAPZInputBridgeChild*>& aArr) const;
    const ManagedContainer<PAPZInputBridgeChild>&
    ManagedPAPZInputBridgeChild() const;

    void
    AllManagedActors(nsTArray<RefPtr<mozilla::ipc::ActorLifecycleProxy>>& arr__) const override;

    ManagedEndpoint<PAPZInputBridgeParent>
    OpenPAPZInputBridgeEndpoint(PAPZInputBridgeChild* aActor);
    bool
    BindPAPZInputBridgeEndpoint(
            ManagedEndpoint<PAPZInputBridgeChild> aEndpoint,
            PAPZInputBridgeChild* aActor);

    PAPZInputBridgeChild*
    SendPAPZInputBridgeConstructor(
            PAPZInputBridgeChild* actor,
            const LayersId& aLayersId);

    bool
    SendInit(
            const nsTArray<GfxVarUpdate>& vars,
            const DevicePrefs& devicePrefs,
            const nsTArray<LayerTreeIdMapping>& mapping);

    bool
    SendInitCompositorManager(Endpoint<mozilla::layers::PCompositorManagerParent>&& endpoint);

    bool
    SendInitVsyncBridge(Endpoint<mozilla::gfx::PVsyncBridgeParent>&& endpoint);

    bool
    SendInitImageBridge(Endpoint<mozilla::layers::PImageBridgeParent>&& endpoint);

    bool
    SendInitVideoBridge(Endpoint<mozilla::layers::PVideoBridgeParent>&& endpoint);

    bool
    SendInitVRManager(Endpoint<mozilla::gfx::PVRManagerParent>&& endpoint);

    bool
    SendInitUiCompositorController(
            const LayersId& rootLayerTreeId,
            Endpoint<mozilla::layers::PUiCompositorControllerParent>&& endpoint);

    bool
    SendInitProfiler(Endpoint<mozilla::PProfilerChild>&& endpoint);

    bool
    SendInitVR(Endpoint<mozilla::gfx::PVRGPUChild>&& endpoint);

    bool
    SendUpdateVar(const GfxVarUpdate& var);

    bool
    SendPreferenceUpdate(const Pref& pref);

    bool
    SendNewContentCompositorManager(Endpoint<mozilla::layers::PCompositorManagerParent>&& endpoint);

    bool
    SendNewContentImageBridge(Endpoint<mozilla::layers::PImageBridgeParent>&& endpoint);

    bool
    SendNewContentVRManager(Endpoint<mozilla::gfx::PVRManagerParent>&& endpoint);

    bool
    SendNewContentRemoteDecoderManager(Endpoint<mozilla::PRemoteDecoderManagerParent>&& endpoint);

    bool
    SendAddLayerTreeIdMapping(const LayerTreeIdMapping& mapping);

    bool
    SendRemoveLayerTreeIdMapping(const LayerTreeIdMapping& mapping);

    bool
    SendGetDeviceStatus(GPUDeviceData* status);

    bool
    SendSimulateDeviceReset(GPUDeviceData* status);

    bool
    SendNotifyGpuObservers(const nsCString& aTopic);

    bool
    SendRequestMemoryReport(
            const uint32_t& generation,
            const bool& anonymize,
            const bool& minimizeMemoryUsage,
            const mozilla::Maybe<FileDescriptor>& DMDFile);

    bool
    SendShutdownVR();

    bool
    SendUpdatePerfStatsCollectionMask(const uint64_t& aMask);

    void
    SendCollectPerfStatsJSON(
            mozilla::ipc::ResolveCallback<nsCString>&& aResolve,
            mozilla::ipc::RejectCallback&& aReject);

    RefPtr<CollectPerfStatsJSONPromise>
    SendCollectPerfStatsJSON();

    void
    RemoveManagee(
            int32_t aProtocolId,
            IProtocol* aListener) override;
    void
    DeallocManagee(
            int32_t aProtocolId,
            IProtocol* aListener) override;

    Result
    OnMessageReceived(const Message& msg__) override;

    Result
    OnMessageReceived(
            const Message& msg__,
            Message*& reply__) override;

    Result
    OnCallReceived(
            const Message& msg__,
            Message*& reply__) override;

    void
    OnChannelClose() override;

    void
    OnChannelError() override;

private:
    void
    ClearSubtree();

    ManagedContainer<PAPZInputBridgeChild> mManagedPAPZInputBridgeChild;
};


} // namespace gfx
} // namespace mozilla
namespace mozilla {
namespace ipc {
template<>
struct IPDLParamTraits <mozilla::gfx::PGPUChild*>
{
    typedef mozilla::gfx::PGPUChild* paramType;
    static void
    Write(
            IPC::Message* aMsg,
            mozilla::ipc::IProtocol* aActor,
            const paramType& aVar);
    static bool
    Read(
            const IPC::Message* aMsg,
            PickleIterator* aIter,
            mozilla::ipc::IProtocol* aActor,
            paramType* aVar);
};
} // namespace ipc
} // namespace mozilla

#endif // ifndef PGPUChild_h

--------------B2E1259F4319D6AB75C42A8C--
0
Dave
1/12/2020 3:19:08 AM
Thanks. So, the header file is indeed missing the declaration of the
method InitSandboxTesting(). That suggests that, at the time it was
generated, this condition [1] was false.

Is it possible that you added "--enable-debug" after the build was
first started, such that the header file was generated in release mode
(making the condition false), while later parts of the build are using
debug mode, causing this mismatch?

Cheers,
Botond

[1] https://searchfox.org/mozilla-central/rev/b04e3a28a2ef4dbf957018dbbdc1840d62fdbc32/gfx/ipc/PGPU.ipdl#108
0
Botond
1/12/2020 3:44:27 AM
On 1/11/20 7:44 PM, Botond Ballo wrote:
> Thanks. So, the header file is indeed missing the declaration of the
> method InitSandboxTesting(). That suggests that, at the time it was
> generated, this condition [1] was false.
> 
> Is it possible that you added "--enable-debug" after the build was
> first started, such that the header file was generated in release mode
> (making the condition false), while later parts of the build are using
> debug mode, causing this mismatch?
> 
> Cheers,
> Botond
> 
> [1] https://searchfox.org/mozilla-central/rev/b04e3a28a2ef4dbf957018dbbdc1840d62fdbc32/gfx/ipc/PGPU.ipdl#108
> 
Yes, that is probable.  I will try clobber and rebuild...
Thanks for your help!
0
Dave
1/12/2020 3:49:09 AM
Reply: