Open Bug 1417419 Opened 2 years ago Updated 2 years ago

Add support for non-optimized debug builds to artifact builds

Categories

(Firefox Build System :: General, enhancement)

enhancement
Not set

Tracking

(Not tracked)

People

(Reporter: whimboo, Unassigned)

References

(Blocks 1 open bug)

Details

Currently the following build configuration causes `mach build` to fail:

--enable-artifact-builds
--enable-debug
--disable-optimize

Result:

 0:04.99 Traceback (most recent call last):
 0:04.99   File "/Volumes/data/code/gecko/configure.py", line 127, in <module>
 0:04.99     sys.exit(main(sys.argv))
 0:04.99   File "/Volumes/data/code/gecko/configure.py", line 29, in main
 0:04.99     sandbox.run(os.path.join(os.path.dirname(__file__), 'moz.configure'))
 0:04.99   File "/Volumes/data/code/gecko/python/mozbuild/mozbuild/configure/__init__.py", line 409, in run
 0:04.99     self._value_for(option)
 0:04.99   File "/Volumes/data/code/gecko/python/mozbuild/mozbuild/configure/__init__.py", line 477, in _value_for
 0:04.99     return self._value_for_option(obj)
 0:04.99   File "/Volumes/data/code/gecko/python/mozbuild/mozbuild/util.py", line 944, in method_call
 0:04.99     cache[args] = self.func(instance, *args)
 0:04.99   File "/Volumes/data/code/gecko/python/mozbuild/mozbuild/configure/__init__.py", line 542, in _value_for_option
 0:04.99     % option_string.split('=', 1)[0])
 0:04.99 mozbuild.configure.options.InvalidOptionError: --disable-optimize is not available in this configuration
 0:05.02 *** Fix above errors and then restart with               "/Applications/Xcode.app/Contents/Developer/usr/bin/make -f client.mk build"
 0:05.02 make: *** [configure] Error 1

By default we produce those builds per commit on all major platforms:

https://treeherder.mozilla.org/#/jobs?repo=autoland&filter-searchStr=debug%20noopt&bugfiler&fromchange=e2e96cb6d4807899cb918ba69227d3ae1e141ac2

It would be great to get that support added, so that we are no longer forced to run a full build locally to get such a build.

Chris, how complicated would that be?
Flags: needinfo?(cmanchester)
(In reply to Henrik Skupin (:whimboo) from comment #0)
> Currently the following build configuration causes `mach build` to fail:
> 
> --enable-artifact-builds
> --enable-debug
> --disable-optimize
> 
> Result:
> 
>  0:04.99 Traceback (most recent call last):
>  0:04.99   File "/Volumes/data/code/gecko/configure.py", line 127, in
> <module>
>  0:04.99     sys.exit(main(sys.argv))
>  0:04.99   File "/Volumes/data/code/gecko/configure.py", line 29, in main
>  0:04.99     sandbox.run(os.path.join(os.path.dirname(__file__),
> 'moz.configure'))
>  0:04.99   File
> "/Volumes/data/code/gecko/python/mozbuild/mozbuild/configure/__init__.py",
> line 409, in run
>  0:04.99     self._value_for(option)
>  0:04.99   File
> "/Volumes/data/code/gecko/python/mozbuild/mozbuild/configure/__init__.py",
> line 477, in _value_for
>  0:04.99     return self._value_for_option(obj)
>  0:04.99   File "/Volumes/data/code/gecko/python/mozbuild/mozbuild/util.py",
> line 944, in method_call
>  0:04.99     cache[args] = self.func(instance, *args)
>  0:04.99   File
> "/Volumes/data/code/gecko/python/mozbuild/mozbuild/configure/__init__.py",
> line 542, in _value_for_option
>  0:04.99     % option_string.split('=', 1)[0])
>  0:04.99 mozbuild.configure.options.InvalidOptionError: --disable-optimize
> is not available in this configuration
>  0:05.02 *** Fix above errors and then restart with              
> "/Applications/Xcode.app/Contents/Developer/usr/bin/make -f client.mk build"
>  0:05.02 make: *** [configure] Error 1
> 
> By default we produce those builds per commit on all major platforms:
> 
> https://treeherder.mozilla.org/#/jobs?repo=autoland&filter-
> searchStr=debug%20noopt&bugfiler&fromchange=e2e96cb6d4807899cb918ba69227d3ae1
> e141ac2
> 
> It would be great to get that support added, so that we are no longer forced
> to run a full build locally to get such a build.
> 
> Chris, how complicated would that be?

Not difficult.  You need to improve the guessing logic at https://searchfox.org/mozilla-central/source/python/mozbuild/mozbuild/artifacts.py#895 and make sure that the guessed builds are present in https://searchfox.org/mozilla-central/source/python/mozbuild/mozbuild/artifacts.py#476.
Flags: needinfo?(cmanchester)
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.