./mach build on Windows generates (un)installers every build
Categories
(Firefox Build System :: General, defect)
Tracking
(Not tracked)
People
(Reporter: barret, Assigned: nalexander)
References
(Blocks 1 open bug)
Details
(Keywords: in-triage, Whiteboard: [fidedi])
Attachments
(1 file)
(deleted),
application/octet-stream
|
Details |
Doing ./mach build
on my windows machine generates (un)installers:
[snip]
0:14.66 Embedding manifest from ../../../browser/app/firefox.exe.manifest
0:52.32 Processing config: c:\mozilla-build\nsis-3.01\nsisconf.nsh
0:52.32 Processing script file: "uninstaller.nsi" (ACP)
0:53.47 Processed 1 file, writing output (x86-unicode):
0:53.47 warning: install function "WriteRegQWORD" not referenced - zeroing code (0-27) out
0:53.47 warning: install function "ReadRegQWORD" not referenced - zeroing code (27-50) out
0:53.47 warning: Variable "AddTaskbarSC" not referenced or never set, wasting memory!
0:53.47 Output: "c:\Users\Barret\Workspace\src\hg.mozilla.org\mozilla-central\obj-x86_64-pc-mingw32\browser\installer\windows\instgen\helper.exe"
0:53.47 Install: 1 page (64 bytes), 1 section (2072 bytes), 5898 instructions (165144 bytes), 2718 strings (20378 bytes), 1 language table (230 bytes).
0:53.47 Uninstall: 4 pages (320 bytes), 1 section (2072 bytes), 3090 instructions (86520 bytes), 2269 strings (17498 bytes), 1 language table (310 bytes).
0:53.47 Using zlib compression.
0:53.47 EXE header size: 63488 / 38912 bytes
0:53.47 Install code: 188332 / 188328 bytes
0:53.47 Install data: 184588 / 184596 bytes
0:53.47 Uninstall code+data: 488155 / 488147 bytes
0:53.47 CRC (0x19FA36D2): 4 / 4 bytes
0:53.47 Total size: 924567 / 899987 bytes (102.7%)
0:53.51 3 warnings:
0:53.51 install function "WriteRegQWORD" not referenced - zeroing code (0-27) out
0:53.51 install function "ReadRegQWORD" not referenced - zeroing code (27-50) out
0:53.51 Variable "AddTaskbarSC" not referenced or never set, wasting memory!
0:55.63 Processing config: c:\mozilla-build\nsis-3.01\nsisconf.nsh
0:55.64 Processing script file: "maintenanceservice_installer.nsi" (ACP)
0:55.89 Processed 1 file, writing output (x86-unicode):
0:55.89 warning: install function "WriteRegQWORD" not referenced - zeroing code (0-27) out
0:55.89 warning: install function "ReadRegQWORD" not referenced - zeroing code (27-50) out
0:55.89 Output: "c:\Users\Barret\Workspace\src\hg.mozilla.org\mozilla-central\obj-x86_64-pc-mingw32\browser\installer\windows\instgen\maintenanceservice_installer.exe"
0:55.89 Install: 1 page (64 bytes), 1 section (2072 bytes), 642 instructions (17976 bytes), 752 strings (4850 bytes), 1 language table (210 bytes).
0:55.89 Uninstall: 2 pages (192 bytes), 1 section (2072 bytes), 216 instructions (6048 bytes), 752 strings (6218 bytes), 1 language table (250 bytes).
0:55.89 Using zlib compression.
0:55.89 EXE header size: 64000 / 38912 bytes
0:55.89 Install code: 25616 / 25612 bytes
0:55.89 Install data: 11780 / 11788 bytes
0:55.89 Uninstall code+data: 52232 / 52224 bytes
0:55.89 CRC (0x2F3D6571): 4 / 4 bytes
0:55.89 Total size: 153632 / 128540 bytes (119.5%)
0:55.92 2 warnings:
0:55.92 install function "WriteRegQWORD" not referenced - zeroing code (0-27) out
0:55.92 install function "ReadRegQWORD" not referenced - zeroing code (27-50) out
[snip]
(full build log attached)
This process takes about 40s, which is the majority of my build time for small changes. it would be great if these weren't generated by ./mach build
and were instead generated by ./mach package
.
Assignee | ||
Comment 1•3 years ago
|
||
I was in the area so took a peek at this. There seems to be a bit of history that is on longer appropriate, specifically
# For Windows build the uninstaller during the application build since the
# uninstaller is included with the application for mar file generation.
from https://searchfox.org/mozilla-central/rev/b52cf6bbe214bd9d93ed9333d0403f7d556ad7c8/browser/Makefile.in#9-10. We don't generate MARs as part of the build now, so we almost certainly don't require the uninstaller at build time.
Now, all of this business is rather more complicated than it ought to be because everything needs to be l10n-aware for single-locale repacks. But I will have a poke and see if I can move this to packaging safely, while maintaining the l10n pieces.
Alternatively, we could keep this in the build proper but make the build system bits less crude: right now we rm -rf ...
directories and force rebuild a bunch of stuff that doesn't change. I haven't gotten to the bottom of that yet.
Assignee | ||
Updated•3 years ago
|
Updated•3 years ago
|
Updated•2 years ago
|
Description
•