Solid:Builders: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(added comment)
(add a scratch pad for an XML build config file)
Line 30: Line 30:
a suitable zip tool on the user's system, and knowing how to call that.
a suitable zip tool on the user's system, and knowing how to call that.
--[[User:Luser|Luser]] 06:25, 21 Jun 2005 (PDT)
--[[User:Luser|Luser]] 06:25, 21 Jun 2005 (PDT)
I'd prefer to have something hooked up to eclipse, so at least one implementation will be java based. I'm currently thinking about a helper jar that the ant task and an eclipse builder can hook into.
--[[User:AxelHecht|AxelHecht]] 08:26, 21 Jun 2005 (PDT)


=== Ant task ===
=== Ant task ===
Line 42: Line 45:
* do we want wildcards? (yes, AxelHecht)
* do we want wildcards? (yes, AxelHecht)
* do we want a preprocessor? (yes, AxelHecht)
* do we want a preprocessor? (yes, AxelHecht)
== Configuration file ==
Let's scratch-pad an XML configuration file to be used to pack content/locale/skin.
<?xml version="1.0"?>
<!-- should we have a namespace? -->
<solid:packager>
  <solid:package type="content" use-preprocessor="yes">
    <solid:include pattern="src/content//*.xul"/>
    <solid:include pattern="src/content//*.js"/>
    <solid:destination pattern="chrome://foo/content"/>
  </solid:package>
</solid:packager>
Wether the content goes to the build dir, unjarred or is jarred up would best be up to a build.properties file, I guess.

Revision as of 15:26, 21 June 2005

Builders should be able to create flat and jarred versions of extensions or XULrunner applications.

Do we need a preprocessor or some sorts?

Alternatives

Makefile

Pros:

Cons:

  • need Makefile in build
  • lots of extra tools required
  • no good dependency tracking for jars

Standalone

Pros:

  • easy to ship

Cons:

  • lots of code to duplicate

Note that my Extension Developer's extension has a standalone build system, and it wasn't terribly hard to put together. The hardest part was finding a suitable zip tool on the user's system, and knowing how to call that. --Luser 06:25, 21 Jun 2005 (PDT)

I'd prefer to have something hooked up to eclipse, so at least one implementation will be java based. I'm currently thinking about a helper jar that the ant task and an eclipse builder can hook into. --AxelHecht 08:26, 21 Jun 2005 (PDT)

Ant task

Pros:

  • easy to ship, ant already comes with eclipse
  • known to quite a few java coders

Cons:

  • ant not really known in the mozilla world

Topics

  • do we want wildcards? (yes, AxelHecht)
  • do we want a preprocessor? (yes, AxelHecht)

Configuration file

Let's scratch-pad an XML configuration file to be used to pack content/locale/skin.

<?xml version="1.0"?>
<solid:packager>
  <solid:package type="content" use-preprocessor="yes">
    <solid:include pattern="src/content//*.xul"/>
    <solid:include pattern="src/content//*.js"/>
    <solid:destination pattern="chrome://foo/content"/>
  </solid:package>
</solid:packager>

Wether the content goes to the build dir, unjarred or is jarred up would best be up to a build.properties file, I guess.