Closed
Bug 186241
Opened 22 years ago
Closed 22 years ago
Build changes for GRE-enabled Mozilla
Categories
(SeaMonkey :: Build Config, defect, P2)
SeaMonkey
Build Config
Tracking
(Not tracked)
RESOLVED
FIXED
mozilla1.3beta
People
(Reporter: netscape, Assigned: netscape)
References
Details
Attachments
(1 file, 1 obsolete file)
74.72 KB,
patch
|
dougt
:
review+
|
Details | Diff | Splinter Review |
We need add support for the GRE to the build system. For starters, this means installing specific files into a separate gre dir under $(DIST) instead of lumping everything into $(DIST)/bin .
Assignee | ||
Comment 1•22 years ago
|
||
To specify that a shared library or .xpt component needs to be installed into the GRE, you have to add GRE_MODULE=1 to the Makefile. You'll have to add a local rule to the Makefiles to copy over the auxillary chrome files (which I haven't done yet). To only install the GRE files only into the GRE dir, set GRE_DIRS_ONLY=1 on the cmdline or in the env when running make.
Comment 2•22 years ago
|
||
i was hoping that we could have tighter granularity. For example there may be makefiles that generate multiple binaries and only some should be exported to the gre location. Do you think that this is an issue?
Assignee | ||
Comment 3•22 years ago
|
||
It isn't a problem at the moment but may be in the future. Right now, it's not possible to build more than one library and $(PROGRAM) from a makefile at a time unless you severely hack it up like the viewer makefile. The biggest problem you'll run into atm is wanting to export a library w/o exporting the .xpt file, which seems silly to do and can be hacked around by adding an additional rm. For additional granularity, we'd have to add something like GRE_FILES = $(SHARED_LIBRARY) $(XPIDL_MODULE).xpt to each makefile then modify rules.mk so that it would skip the default libs ruleset if it find GRE_FILES is non-empty and use a special ruleset to copy the files. I was trying to avoid the additional rulesets in the first pass of the patch.
Priority: -- → P2
Target Milestone: --- → mozilla1.3beta
Comment 4•22 years ago
|
||
Are we creating more work for ourselves with this new export scheme when the existing GRE and Mozilla packaging via the use of manifest files has been working fine. I understand that Seawood's patch is cross platform - but, we can make the existing manifest based process cross platform with minimal changes and minimal impact. Another thing we'll lose with this approach is one can't look at a (manifest) file and and see the list of all files which make up a package. It's also easier to add/delete a file from a central manifest file rather than messing with Makefiles. Also, this new export scheme will impact the way the nigtly GRE/Mozilla installers are currently built. Cc:ing Jon/Aki/Leaf for their input. I'd like to get their buyoff i.e. make sure they are signed up to do the necessary changes on their end, before we check these changes in.
Comment 5•22 years ago
|
||
the packaging system exists because the GRE build changes didn't exist. This approach is the same approach we took for the SDK - the Makefile decides what goes into the SDK. Indeed, we are making more work for ourselves now. We could just live with building everything into dist/bin then copying stuff out of it. Please note, that without setting GRE_DIRS_ONLY=1 there is no change to the current system. There is no new installer work required until we default this flag on.
Assignee | ||
Comment 6•22 years ago
|
||
If we're going to build Mozilla as a GRE-based application, then the default build system needs to mimic the GRE/app framework for our dist install. Otherwise, you'll have to create that framework as a post build step which means that it will probably not get tested outside of nightlies and people specifically working on the GRE. Also, we are still driving the build system towards building Gecko first and then the rest of the Mozilla application. To do that, the build system is going to have to have knowledge of Gecko in one form or another. Some of our (internal!) embeddors are still building the entire tree just to cherry-pick Gecko via the manifest files. We need to provide a way to build Gecko w/o the unecessary additional compilation or cherry-picking steps since our embeddors are not using our binary drops.
Assignee | ||
Comment 7•22 years ago
|
||
This patch adds the DISABLE_DIST_GRE switch to save space for the non-gre builds. DISABLE_DIST_GRE takes precedence over the GRE_DIRS_ONLY switch.
Attachment #109817 -
Attachment is obsolete: true
Comment 8•22 years ago
|
||
the patch worked perfect for me (With GRE_DIRS_ONLY=1)
Comment 9•22 years ago
|
||
Doug/Chris...can you please attach the list of files which end up in dist\GRE with With GRE_DIRS_ONLY set to 1? Like to make sure that the list matches against what the GRE installer currently installs....thanks
Comment 10•22 years ago
|
||
.: components gkgfx.dll js3250.dll jsj3250.dll mozctl.dll mozctlx.dll nspr4.dll plc4.dll plds4.dll xpcom.dll xpicleanup.exe zlib.dll ./components: accessibility.dll accessibility.xpt appshell.dll appshell.xpt caps.dll caps.xpt chrome.dll chrome.xpt content_base.xpt cookie.dll cookie.xpt docshell.dll docshell_base.xpt dom.xpt dom_base.xpt dom_core.xpt dom_css.xpt dom_events.xpt dom_html.xpt dom_range.xpt dom_stylesheets.xpt dom_traversal.xpt dom_views.xpt dom_xbl.xpt dom_xul.xpt editor.dll editor.xpt embedcomponents.dll gfx.xpt gkcontent.dll gkgfxwin.dll gklayout.dll gkparser.dll gkplugin.dll gkview.dll history.xpt htmlparser.xpt i18n.dll imgicon.dll imgicon.xpt imglib2.dll imglib2.xpt imgmng.dll intl.xpt jar.xpt jar50.dll jsurl.dll jsurl.xpt layout_base.xpt layout_xul.xpt locale.xpt mozbrwsr.xpt necko.dll necko.xpt necko2.dll necko_about.xpt necko_cache.xpt necko_cookie.xpt necko_data.xpt necko_dns.xpt necko_file.xpt necko_ftp.xpt necko_http.xpt necko_jar.xpt necko_res.xpt necko_strconv.xpt necko_viewsource.xpt oji.dll oji.xpt plugin.xpt pref.xpt profile.dll profile.xpt rdf.dll rdf.xpt shistory.dll shistory.xpt txtsvc.xpt typeaheadfind.dll typeaheadfind.xpt uconv.dll uconv.xpt ucvmath.dll unicharutil.xpt urildr.dll uriloader.xpt wallet.dll wallet.xpt webBrowser_core.xpt webbrowserpersist.xpt webbrwsr.dll widget.xpt windowwatcher.xpt xmlextras.dll xmlextras.xpt xpc3250.dll xpcom_base.xpt xpcom_components.xpt xpcom_ds.xpt xpcom_io.xpt xpcom_thread.xpt xpcom_xpti.xpt xpinstal.dll xpinstall.xpt xppref32.dll xuldoc.xpt
Assignee | ||
Updated•22 years ago
|
Attachment #109849 -
Flags: review?(dougt)
Updated•22 years ago
|
Attachment #109849 -
Flags: review?(dougt) → review+
Assignee | ||
Comment 11•22 years ago
|
||
I think we're done here.
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
•