Closed
Bug 180718
Opened 22 years ago
Closed 22 years ago
[mach-0] Use rsync to populate app package.
Categories
(SeaMonkey :: Build Config, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: ccarlen, Assigned: ccarlen)
Details
Attachments
(1 file, 2 obsolete files)
1.08 KB,
patch
|
netscape
:
review+
bryner
:
superreview+
|
Details | Diff | Splinter Review |
rsync can sync two local directories and is ideal for copying the contents of dist/bin -> dist/Mozilla[Debug].app/Contents/MacOS. current: cp takes 60 secs. with patch: rsync, after initial pass, takes < 5 secs. It's possible to use the --delete flag with rsync which will sync the two exactly, deleting files in dest which aren't in src. Problem is, that deletes component.reg so the next launch is slow. Maybe it's better to add a clobber target to this makefile which would delete the app bundle? I'm assuming rsync exists on 10.1 as well. Chris, can you confirm? If not, this will need some config tests.
Assignee | ||
Comment 1•22 years ago
|
||
Assignee | ||
Comment 2•22 years ago
|
||
Adds clobber. The old way clobbered the bundle on every build. This allows it when you specify it :-)
Attachment #106664 -
Attachment is obsolete: true
Comment 3•22 years ago
|
||
Yes, 10.1 has rsync. Startup times would be impacted even without the --delete, right? Timeless added that rules which adds the .autoreg file to $(DIST)/bin. Because of it's placing, it gets added after Mozilla.app is created the first time. But subsequent runs with the new patch will cause it to be rsync'd and force component registration.
Assignee | ||
Comment 4•22 years ago
|
||
After the 1st build, without --delete, there's no full component registration because compreg.dat is still there. Since rscync only updates what's changed, only components which were rebuilt are re-registered (what we want).
Assignee | ||
Comment 5•22 years ago
|
||
OK, now I see what .autoreg does. For Mach-0, .autoreg is irrelevant, with or without this patch. Currently, "touch $(DIST)/bin/.autoreg" happens after the app bundle is built, so .autoreg never ends up in dist/Mozilla[Debug].app/Contents/MacOS.
Comment 6•22 years ago
|
||
Comment on attachment 106672 [details] [diff] [review] adds clobber Actually, it does become relevant whenever we stop automatically clobbering dist/Mozilla.app. It would just take effect one cycle later. We should probably reorder that rule so that it occurs before .app is packaged.
Attachment #106672 -
Flags: review+
Assignee | ||
Comment 7•22 years ago
|
||
I reordered it now since, with the patch, we're no longer clobbering dist/Mozilla.app. Also, made a "clean" rule as a synonym for "clobber." With that, here's how to make use of this change: If you're using a Project Builder project for debugging (http://www.mozilla.org/ports/fizzilla/DebugMach.html, the section Building From Within ProjectBuilder), you can set the directory to mozilla/xpfe/bootstrap, the build command to usr/bin/make, and arguments to $ACTION. Now, after changing some component, Build & Debug from PB is nice & fast.
Assignee | ||
Updated•22 years ago
|
Attachment #106672 -
Attachment is obsolete: true
Updated•22 years ago
|
Attachment #106711 -
Flags: review+
Assignee | ||
Updated•22 years ago
|
Attachment #106711 -
Flags: superreview?(bryner)
Comment 8•22 years ago
|
||
Comment on attachment 106711 [details] [diff] [review] reorders touch of .autoreg Hm. I'd prefer if the components directory still contained symlinks in the app package. That would eliminate the need to make in xpfe/bootstrap when debugging and testing. It might also make sense to have 'chrome' be a symlink back to dist/bin/chrome, so that you don't have to rebuild in xpfe/bootstrap after changing chrome.
Assignee | ||
Comment 9•22 years ago
|
||
> That would eliminate the need to make in xpfe/bootstrap when
debugging and testing.
But, the point is, this patch makes that quick and painless.
Updated•22 years ago
|
Attachment #106711 -
Flags: superreview?(bryner) → superreview+
Assignee | ||
Comment 10•22 years ago
|
||
Fixed.
Status: NEW → RESOLVED
Closed: 22 years ago
Resolution: --- → FIXED
Updated•20 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•