make[4]: *** No rule to make target '../../media/libdav1d/asm/config.o', needed by 'libxul.so'. Stop.

RESOLVED FIXED in Firefox 67

Status

()

enhancement
P2
normal
Rank:
15
RESOLVED FIXED
6 months ago
3 months ago

People

(Reporter: jkt, Assigned: glandium)

Tracking

(Blocks 1 bug)

65 Branch
mozilla67
x86_64
Linux
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox67 fixed)

Details

Attachments

(2 attachments, 1 obsolete attachment)

Reporter

Description

6 months ago
Today I was unable to build after rebasing. Bug 1509453 prevented this as there is something missing from the config.

I'm going to file a patch to disable at least to help others with this issue. Perhaps it's an issue with sccache?
Thanks for the report, I am running a build on Linux to check your error. What are you planning to disable?
Can confirm that I am seeing this issue as well (no sccache).
Installing nasm fixed this for me. Seems there's a check missing.

Updated

6 months ago
Rank: 15
Priority: -- → P2
Er yeah, nasm remained optional until this patch. We should either bail out in configure now, or disable av1 if nasm isn't present.
The Mozilla way is to have configuration independent of the system.  That implies the bail out option, requiring the configurer to choose whether to explicitly disable or provide nasm.
I agree. Also, we need to check for nasm >2.13, which is also missing (before it would work with 2.10 or even older). I'll make a patch that checks this and bails out unless you have explicitly disabled all features that require it (currently AV1)
Maybe is a good idea to add nasm configuration in `./mach bootstrap`.
It's already there (let me know if it doesn't work)
Sorry my bad, I should have checked before speak.
My distribution only provides nasm version 2.11.08.
Also require nasm unless av1 is disabled.

Comment 14

6 months ago
This happens for me too, with gcc 8.
Adding anything to ./mach bootstrap will not fully solve the problem as that one only works on a few blessed distros.
Installing nasm 2.14 (I had none) solves the problem, thanks.

Yes, configure should warn if nasm is not installed.

Comment 15

6 months ago
I was able to see this problem and workaround by applying the patch from @jkt to disable ASM. I tried to upgrade my nasm to 2.14 and workaround the problem that way. Unfortunately I could not. That's probably because mach was using the original (older) version of nasm and not taking into account my new $PATH that included the bin directory for the newer nasm. Does anyone know if mach caches the absolute path to nasm? If so, could you tell me how to change that? Sorry for being a newbie!
Yes, it does take the absolute path. You need to rerun ./mach configure to get the new path after your $PATH changes.
Hi Will!
It's totally fine to being a newbie! Thanks you for your comment. Has the comment above solved your issue?

Comment 18

6 months ago
(In reply to Alex Chronopoulos [:achronop] from comment #17)
> Hi Will!
> It's totally fine to being a newbie! Thanks you for your comment. Has the
> comment above solved your issue?

Thanks for being so kind. After rerunning './mach configure' I was able to build without having to use the patch from jkt. So, it seems like the answer to the problem really is just a modern version of nasm! 

Thanks again Alex and Thomas! 

Will
Duplicate of this bug: 1518432
Assignee

Comment 20

5 months ago

AV1 is actually enabled everywhere by default (except 32-bits Windows
when building with MSVC), so let's make the option --disable-av1 rather
than --enable-av1. Also, since AV1 is backed by both libaom and
libdav1d, remove mentions to libaom.

Attachment #9033014 - Attachment description: Bug 1515641 - Check for nasm >= 2.13 in configure. → Bug 1515641 - Check for nasm >= 2.13 for dav1d.
Attachment #9032680 - Attachment is obsolete: true
Assignee

Updated

5 months ago
Attachment #9032680 - Attachment is obsolete: true

Comment 21

5 months ago
Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/autoland/rev/5a8a06e5187c
Turn --enable-av1 around. r=nalexander
https://hg.mozilla.org/integration/autoland/rev/99cc2de46625
Check for nasm >= 2.13 for dav1d. r=TD-Linux,nalexander
Assignee

Updated

5 months ago
Depends on: 1524703

Backed out 2 changesets (bug 1515641) for Linux static-analysis bustage on a CLOSED TREE.

Backout link: https://hg.mozilla.org/integration/autoland/rev/cc76d4da63a5503bf9bd1c133776b350428faa56

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&resultStatus=testfailed%2Cbusted%2Cexception&revision=99cc2de46625844171a53e94934ccba596005360&selectedJob=225542545

Log link: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=225542545&repo=autoland&lineNumber=1260

Log snippet:

task 2019-02-01T22:15:55.076Z] 22:15:55 INFO - checking for freetype2 >= 6.1.0... yes
[task 2019-02-01T22:15:55.266Z] 22:15:55 INFO - checking _FT2_CFLAGS... -I/usr/include/freetype2
[task 2019-02-01T22:15:55.463Z] 22:15:55 INFO - checking _FT2_LIBS... -lfreetype
[task 2019-02-01T22:15:55.465Z] 22:15:55 INFO - ERROR: nasm 2.13 or greater is required for AV1 support. Either install nasm or add --disable-av1 to your configure options.
[task 2019-02-01T22:15:55.513Z] 22:15:55 INFO - *** Fix above errors and then restart with
[task 2019-02-01T22:15:55.514Z] 22:15:55 INFO - "./mach build"
[task 2019-02-01T22:15:55.515Z] 22:15:55 INFO - client.mk:111: recipe for target 'configure' failed
[task 2019-02-01T22:15:55.515Z] 22:15:55 INFO - make: *** [configure] Error 1
[task 2019-02-01T22:15:55.599Z] 22:15:55 ERROR - Return code: 2
[task 2019-02-01T22:15:55.600Z] 22:15:55 WARNING - setting return code to 2
[task 2019-02-01T22:15:55.601Z] 22:15:55 FATAL - 'mach configure' did not run successfully. Please check log for errors.
[task 2019-02-01T22:15:55.602Z] 22:15:55 FATAL - Running post_fatal callback...
[task 2019-02-01T22:15:55.602Z] 22:15:55 FATAL - Exiting -1
[task 2019-02-01T22:15:55.603Z] 22:15:55 INFO - [mozharness: 2019-02-01 22:15:55.603706Z] Finished static-analysis-autotest step (failed)
[task 2019-02-01T22:15:55.604Z] 22:15:55 INFO - Running post-run listener: _parse_build_tests_ccov
[task 2019-02-01T22:15:55.604Z] 22:15:55 INFO - Running post-run listener: _shutdown_sccache
[task 2019-02-01T22:15:55.606Z] 22:15:55 INFO - Running command: ['/builds/worker/workspace/build/src/sccache2/sccache', '--stop-server'] in /builds/worker/workspace/build/src
[task 2019-02-01T22:15:55.607Z] 22:15:55 INFO - Copy/paste: /builds/worker/workspace/build/src/sccache2/sccache --stop-server
[task 2019-02-01T22:15:55.612Z] 22:15:55 INFO - Stopping sccache server...

Flags: needinfo?(jkt)
Assignee

Comment 23

5 months ago

Those builds don't have nasm in their docker image. Bug 1524703 was filed for that.

Flags: needinfo?(jkt)
Assignee

Updated

5 months ago
Assignee: jkt → mh+mozilla

Comment 24

4 months ago
Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/autoland/rev/9820df609ddf
Turn --enable-av1 around. r=nalexander
https://hg.mozilla.org/integration/autoland/rev/7b565c75d34b
Check for nasm >= 2.13 for dav1d. r=TD-Linux,nalexander

Comment 25

4 months ago
bugherder
Status: NEW → RESOLVED
Closed: 4 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla67

I think that would be cool add the information that the build require nasm >= 2.12 in the docs, since this has been very recurrent.

Depends on: 1534613
You need to log in before you can comment on or make changes to this bug.