Open Bug 1104342 Opened 11 years ago Updated 3 years ago

Changing a library from shared to static requires a clobber

Categories

(Firefox Build System :: General, defect)

All
Linux
defect

Tracking

(Not tracked)

People

(Reporter: jld, Unassigned)

References

(Blocks 1 open bug)

Details

Discovered in bug 1101170: on Linux, changing a SharedLibrary() to a static Library() with the same name will result in trying to link against the .so file from the earlier build (and possibly succeeding). There may be similar issues on other platforms; I haven't checked them. This can be worked around with a clobber, and it's not a very common case, but there seems to be some footgun potential here.
I was about to suggest adding a rm command when building shared and static libraries (we actually have something like that for .a.desc vs .a), but with all the recent changes to the build system, whereby whether to link against the static or shared alternatives is decided at config.status time, we can probably lift some of the magic that expandlibs does (in fact, I'd like to kill expandlibs, but that needs some more changes to the build system frontend code first)
Blocks: clobber
Product: Core → Firefox Build System
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.