[ros-dev] [ros-diffs] [mpiulachs] 46862: My first commit in a very long time. I'm releasing the source code of my C# implementation of Rbuild by popular demand :) I would have preferred to release the code under a BSD licence but there is a small portion of anc

Ged Murphy gedmurphy at gmail.com
Wed Apr 14 16:41:51 CEST 2010


It partially works. 
Can't build the designer due to a Skybound.VisualStyles dependency. I assume we get that from here? http://windowsclient.net/downloads/folders/controlgallery/entry1590.aspx

It then crashes when running the html report

Just in case you were interested....

Ged.

-----Original Message-----
From: ros-diffs-bounces at reactos.org [mailto:ros-diffs-bounces at reactos.org] On Behalf Of mpiulachs at svn.reactos.org
Sent: 13 April 2010 23:00
To: ros-diffs at reactos.org
Subject: [ros-diffs] [mpiulachs] 46862: My first commit in a very long time. I'm releasing the source code of my C# implementation of Rbuild by popular demand :) I would have preferred to release the code under a BSD licence but there is a small portion of ancient

Author: mpiulachs
Date: Tue Apr 13 23:59:21 2010
New Revision: 46862

URL: http://svn.reactos.org/svn/reactos?rev=46862&view=rev
Log:
My first commit in a very long time. I'm releasing the source code of my C# implementation of Rbuild by popular demand :) I would have preferred to release the code under a BSD licence but there is a small portion of ancient Nant GPL code that would have been to be rewritten first.

There are two executables (SysGen.Designer) and (SysGen.Make)

SysGen.Designer is a windows forms tool that allows to generate customized reactos images, it is similar in concept to Windows CE Platfom Builder. SysGen.Make is the actual Rbuild clone, It has three main parts, the .rbuild file parser + in-memory tree representation, the backends , and the auto generated files. The Mingw backend used to work 1'5 years ago and produced a 100% valid makefile.auto but have to be updated to be able to build a recent revision. Rewriting parts of it to take advantage of C# 3.5 extension methods would probably reduce the code by 50%. The other two parts are quite stable.

This code was only a proof of concept and was never intended to be released so there is a ton of unpolished code and hacks required by the current C++ implementation that should be removed.

How to test it:

Select SysGen.Make as the Start-up Project in Visual Studio and edit Program.cs to point to the correct path to ReactOS-i386.rbuild Edit SysGenEngine.cs:639 to enable/disable specific backends, The HtmlBackend in \SysGen.BuildEngine\Backends\Html\HtmlBackend.cs is a very simple illustration of how powerful this framework is.

Happy hacking!






More information about the Ros-dev mailing list