Hi Paul,

Come over to the castle devel mailing list and we can discuss.

We need to do something better in this area because currently our releases
of individual projects is manually created, which is obviously a bad idea.

On Sun, Jun 21, 2009 at 12:04 AM, Paul Cowan <[email protected]> wrote:

> Hi all,
>
> I am one of the committers for a project called horn (
> http://code.google.com/p/scotaltdotnet/) that aims to be a package manager
> for .NET.
>
> Briefly, we store build descriptors in DSL files that contain instructions
> of how to build the package.  We also deal with dependency management.
>
> Recently we had great difficulty getting the following command to run:
>
> horn -install:nhibernate
> When we are executing this command the nhibernate DSL has the following
> dependencies section:
>
> dependencies:
>     depend "castle.tools" >> "Castle.Core"
>     depend "castle.tools" >> "Castle.DynamicProxy2"
>
> The code retrieves the Castle source code and builds it and copies the
> output of the build into nhibernate's shared library folder.
>
> The relationship between nhibernate and castle gave us a lot of headaches
> when we tried to reference the whole castle code base.  Castle refeneces
> nhibernate and nhibernate refences castle.
>
> The only way we could break this circular reference was to split castle up
> into a seperate sub-package that contained only the DynamicProxy bits.
>
> Our DSL for what we call castle.tools looks like this:
>
> install castle.tools:
>      description "Dynamic Proxy Generator for the CLR."
>
>     prebuild:
>         cmd "xcopy /s /y \"../Patch\" ."
>
>     include:
>         repository(castle, part("Tools"), to("Tools"))
>         repository(castle, part("Core"), to("Core"))
>         repository(castle, part("common.xml"), to("common.xml"))
>         repository(castle, part("common-project.xml"),
> to("common-project.xml"))
>         repository(castle, part("CastleKey.snk"), to("CastleKey.snk"))
>
>     build_with nant, buildfile("Tools/Tools.build"), FrameworkVersion35
>
>     switches:
>         parameters "sign=true","common.testrunner.enabled=false"
>
>     shared_library "SharedLibs/net/2.0"
>     output "build/net-3.5/debug"
>
>
> The only problem with this is that the way the nant files are structured
> means you can only build the whole of castle.
>
> You cannot build individual parts.
>
> If you look at the DSL above, we have the following dos command:
>
> prebuild:
>     cmd "xcopy /s /y \"../Patch\" ."
>
> Here we are copying our changes to the nant script over the freshly
> downloaded source code.
>
> Are there any plans to split castle into seperate packages like
> castle.windsor and castle.facilities or would you be open to a patch to the
> nant script that allowed seperate subpackage builds?
>
> Cheers
>
> Paul
>
>
>
>
> >
>


-- 
Jono

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Castle Project Users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/castle-project-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to