Open Bug 1457161 Opened 2 years ago Updated 1 year ago

configure should error if EXPAND_LIBS_LIST_STYLE=none

Categories

(Firefox Build System :: General, enhancement)

3 Branch
enhancement
Not set

Tracking

(Not tracked)

People

(Reporter: ted, Unassigned)

References

Details

bug 1429875 changed things so we always use expandlibs-style descriptors to build. Unfortunately the configure check that figures out what kind of list files the linker can use will happily set `EXPAND_LIBS_LIST_STYLE=none` if it can't figure things out:
https://dxr.mozilla.org/mozilla-central/rev/99c19a66c3a2fbf8108d4b8a161cded31e948409/build/autoconf/expandlibs.m4#14

and then the common backend code that is supposed to write the list file will early-return in that case, so the backend.mk will have a reference to a .list file that was never created:
https://dxr.mozilla.org/mozilla-central/rev/99c19a66c3a2fbf8108d4b8a161cded31e948409/python/mozbuild/mozbuild/backend/common.py#275

tjr hit this with a patch he was testing because presumably the flags he's setting make the list style configure test fail to find a list style. Here's the failure in his try push:
https://treeherder.mozilla.org/logviewer.html#?job_id=175581975&repo=try&lineNumber=14699

[task 2018-04-25T20:03:48.610Z] 20:03:48     INFO -  make[4]: *** No rule to make target 'libfake_so.list', needed by 'libfake.so'.  Stop.

Looking up into the output of configure in that log you can see:
[task 2018-04-25T19:57:52.987Z] 19:57:52     INFO -  checking what kind of list files are supported by the linker... none

We need to make the `none` case into an error so this at least fails in an informative way. It also might not be a bad idea to make the `_make_list_file` function raise an exception if an unknown list type sneaks in, just in case.

It would be extra nice to move those configure checks to moz.configure, but just adding an error would be good enough for now. We can probably just hardcode the list type based on the linker in use, which we should know in moz.configure at this point.
Just a note that I hit this again - this time on the Windows builds - when my first attempt at Bug 1457162 caused them to select 'none' instead of 'list'.
Version: Version 3 → 3 Branch
You need to log in before you can comment on or make changes to this bug.