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

--~--~---------~--~----~------------~-------~--~----~
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