Ayende @ Rahien

Refunds available at head office

Running on the trunk: Building Rhino Commons

Well, it looks like I have to share the big secret of how to keep Rhino Commons in sync with both NHibernate & Castle. The secret is never opening Visual Studio and doing it all from the command line. Here is the magic formula:

D:\OSS>cd nhibernate
D:\OSS\nhibernate>svn up
D:\OSS\nhibernate>nant
D:\OSS\nhibernate>cd..
D:\OSS>cd Castle
D:\OSS\Castle>svn up
D:\OSS\Castle>nant
D:\OSS\Castle>copy ..\nhibernate\build\NHibernate-2.0.0.Alpha1-debug\bin\net-2.0\*.* build\net-2.0\debug /y
D:\OSS\Castle>nant
D:\OSS\Castle>copy ..\nhibernate\build\NHibernate-2.0.0.Alpha1-debug\bin\net-2.0\*.* ..\rhino-tools\SharedLibs\NHibernate /y
D:\OSS\Castle>copy build\net-2.0\debug\*.* ..\rhino-tools\SharedLibs\Castle\*.* /y
D:\OSS\Castle>cd..
D:\OSS>cd rhino-tools
D:\OSS\rhino-tools>msbuild BuildAll.build

Comments

Mike
08/06/2007 07:31 AM by
Mike

Do you ever feel like a mad scientist? :)

Thanks for sharing this...I'll give it a go...

Andris
08/06/2007 08:00 AM by
Andris

Hmm and what about NHibernate's dependencies on Castle's libraries (like DynamicProxy2)? Can they be safely ignored?

I'm doing it in different order:

build Castle trunk

copy required castle libraries to NHibernate

build NHibrenate trunk

copy required NHibernate libraries to Castle

build Castle trunk again

And, BTW, there were some Castle projects that were implementing (if that's the right term) ISession, and they don't have implementations for some latest ISession additions. However, maybe it's fixed by now.

Mike
08/06/2007 04:36 PM by
Mike

I had to fix those ISession differences manually (they just are decorated in Castle). The .csproj file for Monorail choked during the build, too....but that was last week.

Jim Bolla
08/06/2007 08:10 PM by
Jim Bolla

What if you added NHibernate and Castle as SVN Externals underneath Rhino-tools? Then an SVN Update to Rhino-tools would update NHibernate and Castle as well.

Adam Tybor
08/06/2007 11:48 PM by
Adam Tybor

Just note, do not delete any libs, just update and copy.

I have a script that deletes the deps and things fail b/c Castle depends on nullables and NHibernate trunk is no longer producing nullables.

Comments have been closed on this topic.