Firefox 47.0 fails to build from source tarball

RESOLVED WORKSFORME

Status

--
critical
RESOLVED WORKSFORME
2 years ago
8 months ago

People

(Reporter: davmac, Unassigned)

Tracking

47 Branch
x86
Linux

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Reporter)

Description

2 years ago
Created attachment 8760900 [details]
configure-failure.log

User Agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:46.0) Gecko/20100101 Firefox/46.0
Build ID: 20160510224441

Steps to reproduce:

1. Download source tarball : firefox-47.0.source.tar.xz
    I have all prerequisites installed, including autoconf-2.13 (which wasn't necessary for 46.0.1, but absence causes 47.0 to fail early).
2. Extract. "ls -s broswer/config/mozconfig .mozconfig". "mkdir obj". "cd obj"
3. Configure:

../configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-default-toolkit=cairo-gtk2 \
  --disable-tests --disable-installer --disable-crashreporter \
  --with-system-zlib --with-system-bz2 --disable-updater \
  --disable-libnotify --disable-necko-wifi \
  --enable-bundled-fonts --enable-gold \
  --with-system-icu --disable-gstreamer \
  --disable-strip --enable-install-strip --enable-release --with-system-jpeg \
  --disable-elf-hack --disable-jemalloc --disable-dmd  2>&1 > configure-failure.log



Actual results:

Configure proceeds as per attached log.

Then, following is output to terminal, despite that stderr and stdout were redirected:

Reticulating splines...
Traceback (most recent call last):
  File "./config.status", line 1054, in <module>
    config_status(**args)
  File "/usr/src/firefox-47.0/python/mozbuild/mozbuild/config_status.py", line 162, in config_status
    definitions = list(definitions)
  File "/usr/src/firefox-47.0/python/mozbuild/mozbuild/frontend/emitter.py", line 164, in emit
    for out in output:
  File "/usr/src/firefox-47.0/python/mozbuild/mozbuild/frontend/reader.py", line 1066, in read_mozbuild
    raise bre
mozbuild.frontend.reader.BuildReaderError:
==============================
ERROR PROCESSING MOZBUILD FILE
==============================

The error occurred while processing the following file:

    /usr/src/firefox-47.0/js/src/moz.build

The error appears to be part of the mozbuild.frontend.reader Python module itself! It is possible you have stumbled across a legitimate bug.

Traceback (most recent call last):
  File "/usr/src/firefox-47.0/python/mozbuild/mozbuild/frontend/reader.py", line 1062, in read_mozbuild
    metadata=metadata):
  File "/usr/src/firefox-47.0/python/mozbuild/mozbuild/frontend/reader.py", line 1118, in _read_mozbuild
    mozpath.join(topobjdir, reldir, 'config.status'))
  File "/usr/src/firefox-47.0/python/mozbuild/mozbuild/backend/configenvironment.py", line 188, in from_config_status
    config = BuildConfig.from_config_status(path)
  File "/usr/src/firefox-47.0/python/mozbuild/mozbuild/backend/configenvironment.py", line 42, in from_config_status
    mtime = os.path.getmtime(path)
  File "/usr/src/firefox-47.0/obj/_virtualenv/lib/python2.7/genericpath.py", line 62, in getmtime
    return os.stat(filename).st_mtime
OSError: [Errno 2] No such file or directory: '/usr/src/firefox-47.0/obj/js/src/config.status'




Expected results:

Should configure successfully, just as Firefox 46.0.1 did with the exact same sequence (and without requiring autoconf to be installed).

There are multiple issues here as far as I am concerned:

1. Configure should have been successful.
2. autoconf should not need to be installed if I am building from a release tarball
3. Failure output should not go to terminal if output has been redirected.
(Reporter)

Updated

2 years ago
Severity: normal → critical
OS: Unspecified → Linux
Hardware: Unspecified → x86
Version: 46 Branch → 47 Branch
(Reporter)

Comment 1

2 years ago
Ah - the redirection was wrong, so that's my bad; it should of course have been "> configure-fail.log 2>&1" rather than the other way around. However the other two issues stand.

Updated

2 years ago
Component: Untriaged → Build Config
Product: Firefox → Core

Comment 2

2 years ago
Did you run the command ./configure directly or or ran in through ./mach build. If you ran it directly, try add the same options but in a mozconfig file and then run ./mach build. Tell us what happen then.
(Reporter)

Comment 3

2 years ago
I had run ./configure directly.

When I do as you suggest, putting all the configure options in the mozconfig file and then run "./mach build", I get the exact same output as I did when I ran ./configure directly (except that each line is now preceded with a blue timestamp).
(Reporter)

Comment 4

2 years ago
I've upgrade some components on my system, most notably bash, and this seems to have resolved the problem. 47.0 builds successfully using my original commands. I think you can close this - sorry for the noise.

Updated

2 years ago
Status: UNCONFIRMED → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → WORKSFORME

Updated

8 months ago
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.