devops: add FF debug build instructions (#9534)

This commit is contained in:
Max Schmitt 2021-10-15 23:48:50 +02:00 committed by GitHub
parent 2d3d733af7
commit cd7dfc8448
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 12 additions and 2 deletions

View file

@ -85,6 +85,10 @@ Set the `DEBUG=pw:browser` environment variable to see it.
## Firefox
### Debug build
When compiling set the `FF_DEBUG_BUILD=1` environment variable.
#### Stack trace
In `//mozglue/misc/StackWalk.cpp` add
@ -96,7 +100,9 @@ In `//mozglue/misc/StackWalk.cpp` add
In native code use
```c++
nsTraceRefcnt::WalkTheStack(stderr);
#include "mozilla/StackWalk.h"
// ...
MozWalkTheStack(stderr);
```
If the stack trace is still mangled `cat` it to `tools/rb/fix_linux_stack.py`

View file

@ -66,6 +66,10 @@ echo "mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/${OBJ_FOLDER}" >> .mozconfig
echo "ac_add_options --disable-crashreporter" >> .mozconfig
echo "ac_add_options --disable-backgroundtasks" >> .mozconfig
if [[ -n $FF_DEBUG_BUILD ]]; then
echo "ac_add_options --enable-debug" >> .mozconfig
fi
if [[ "$(uname)" == MINGW* || "$(uname)" == "Darwin" ]]; then
# This options is only available on win and mac.
echo "ac_add_options --disable-update-agent" >> .mozconfig

View file

@ -31,7 +31,7 @@ async function installFirefoxPreferences(distpath) {
if (os.platform() === 'linux')
executablePath = path.join(distpath, 'firefox');
else if (os.platform() === 'darwin')
executablePath = path.join(distpath, 'Nightly.app', 'Contents', 'MacOS', 'firefox');
executablePath = path.join(distpath, (process.env.FF_DEBUG_BUILD ? 'NightlyDebug.app' : 'Nightly.app'), 'Contents', 'MacOS', 'firefox');
else if (os.platform() === 'win32')
executablePath = path.join(distpath, 'firefox.exe');