Compiling hacked castle, nhibernate, lucene etc

0 views
Skip to first unread message

David Moore

unread,
Aug 31, 2007, 1:40:18 PM8/31/07
to castle-pro...@googlegroups.com
Hi

I'm using the trunk version of Castle. I'm compiling this myself.

Because I need some of the newer features, I am also building NHibernate
(2.1)
Lucene and others such as Snowball.Net. Working at the cutting edge you
could say.

It's a bit of a nightmare to get these all working together with their
various
dependancies and differing versions. For example, Castle is using
NHibernate 1.x.

I'm also looking at and making small changes to Castle to get these things
to work
together and add features I need.

I was compiling these projects separately and placing these DLLs into a
Lib folder
for my actual web application and referencing these DLLs.

This keeps my solution/web project easier and cleaner for the other guys
in the team, but
I find this is increasingly cumbersome.

I would prefer to have all of my required 3rd party libraries to be in my
solution as source
code rather than compiling and placing in the Lib directory (where they
are versioned in Subversion).

This way, I would have all the source code involved in the project, making
debugging any feature
and library easier. However the build time and complexity is increased and
I think would make things
more difficult for the other developers.

I'm considering perhaps making a nant script that can manage this stuff
for me, keeping the projects
separate, compiling, shifting around dlls.

But first, I'd like to see if anyone else has encountered this hurdle and
what you've done to
overcome it.

Any suggestions appreciated

--
David

Adam Tybor

unread,
Aug 31, 2007, 2:14:13 PM8/31/07
to castle-pro...@googlegroups.com
I don't claim to be an msbuild expert... There is also a lot of junk in this file based on experiments I was trying but here is an msbuild  script that currently does a  castle build, then copies over DP and Core to NHibernate.  Builds NH, rebuilds castle using the new NH libs, then builds some of the Rhino Projects.  I then have another script I use to copy the newly built deps for some of my active projects to the projects lib directories.  I store all the dll in subversion.

Some of the garbage you see was me trying to ILMerge NH, Castle, and Rhino into a single dll.  Castle and Windsor did not play nice with this.  I have been looking at good solution because I would love to be able to carry around a single dll instead of the 10 - 20 that I usually have in my MR projects.

A simple msbuild Default.build /t:BuildAll /p:Configuration=release does the trick.  Make sure to check the file and directory locations mostly defined at the top of the script.  And it does use the MSbuild community tasks.

Adam
Default.build
Reply all
Reply to author
Forward
0 new messages