excalibur-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Berin Loritsch <blorit...@d-haven.org>
Subject Re: The JPS build stuff
Date Tue, 15 Jun 2004 00:49:20 GMT
Leo Simons wrote:
> I tend to spell it "JBS" :-D

Sorry...

> 
> Berin Loritsch wrote:
> 
>> For the most part it works just fine.  Just a couple observations
>> though:
>>
>> * There is no "clean" target, so that process either has to be done
>>   through Maven or manually deleting the "target" directories.  Kind
>>   of a pain.
> 
> 
> uhm, yeah. I never do 'clean'. I do
> 
>   find . -name 'target' -or -name '*.log' | xargs rm -Rf
> 
> which is much quicker than loading up a JVM and having it get to grips 
> with the filesystem. Should add it for the non-UNIXers I guess :-D

It is convenient nonetheless.  "ant clean" is shorter to type and easier
to remember, so IMO worth the overhead.

For DOS/Windows command line, there isn't anything so robust to do that.

>> * Any changes to the versioned JPS code doesn't automatically get
>>   updated.  Even if we "re-install" the JPS stuff, the JPS installer
>>   ANT script uses the archive of the JPS stuff instead of what we
>>   just updated.
> 
> 
> yep. I used to use a cvs checkout for that, but there's no <svn/> ant 
> task that works well. After making changes right now you need to run
> 
>   cd buildsytem/jbs
>   sh create-archive.sh
>   svn commit -m 'update archive'
> 
> which can't be done with ant because of the no <svn/> issue.

:(

Ok, That'll have to go up on the Excalibur Wiki right away...  (I'm not
likely to remember that the next time I need it).

> Anyway the original reason to structure things this way is that it allows
> 
>   export REPO=http://svn.apache.org/repos/asf/excalibur/trunk/
>   wget $REPO/buildsystem/jbs/install/build.xml
>   ant
> 
> which I had as part of an rpm specfile at some point so you could
> 
>   apt-get install jbs jicarilla-src
> 
> and get the latest version of JBS properly installed and the latest 
> sources from CVS. That wasn't worth maintaining. Feel free to change 
> things :-D

Cool.

>> It does work though.  That much can be said for it.
> 
> 
> I will be the first to admit that it doesn't work that well. Some of the 
> other recent ant-1.6-based build setups are somewhat cleaner. This is 
> the only tool I've seen that autogenerates gump descriptors that are 
> always 100% valid.
> 
> But IMHO the single big advantage over using maven is being able to 
> debug by adding a <echo/> statement in an obvious place (or a 
> System.out.println() in the bits javascript code) or running -verbose. 
> It's just ant. When things fail, that makes it much easier to fix 
> things. Like I had to do today.
> 
> This is alsoo why I really like the dense dependencies.list files (I 
> think I'm probably the only one). They're hacker-friendly. I can do 
> something like
> 
>   find . -name dependencies.list | xargs sed -i \
>     -e 's/excalibur-\([^ ]\+\) [^ ]\+ /excalibur-\1 - /'
> 
> which replaces all instances of
> 
>   excalibur-blah 1.2.4
> 
> with
> 
>   excalibur-blah -
> 
> (ie a SNAPSHOT dependency) in all projects. Yes, that can be done to 
> XML. No, it is not as easy.

Agreed.  In fact, that is something of a plus.  I haven't gotten too
deep into the build system.

-- 

"Programming today is a race between software engineers striving to 
build bigger and better idiot-proof programs, and the Universe trying to 
produce bigger and better idiots. So far, the Universe is winning."
                 - Rich Cook

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@excalibur.apache.org
For additional commands, e-mail: dev-help@excalibur.apache.org
Apache Excalibur Project -- URL: http://excalibur.apache.org/


Mime
View raw message