I know only RosBE is officially supported. I don't have any problem with that. But I prefer to work on Visual Studio, and perhaps someone that also intends to use it may be interested in the following:
Per file custom build steps vs. custom build rules files. The proper way to add support for external tools like the as and nasm assemblers, or any other, is to write a .rules file for each of these tools. This way it is not necessary to specify custom build rules for each file. The rules file for masm is included in vs8, 9 and 10. Once you load a rules file into a project, associated extensions are handled just like any other tool there, making available inheritable properties templates and all that. For example, I wrote an as_mscpp.rules file that reads:
<?xml version="1.0" encoding="utf-8"?> <VisualStudioToolFile Name="s as (gnu_as mscpp)" Version="8.00" > <Rules> <CustomBuildRule Name="s_as_mscpp" DisplayName="s (gnu_as mscpp)" CommandLine="cl /E [sIncPaths] [sPPDefs] $(InputPath) | as -o [sOutF]" Outputs="[$sOutF]" FileExtensions="*.s" ExecutionDescription="Assembling " > <Properties> <StringProperty Name="sOutF" DisplayName="Obj File" Description="Obj File (-o [file])" Switch=""[value]"" Inheritable="true" DefaultValue="$(IntDir)$(InputName).obj"
/> <StringProperty Name="sIncPaths" DisplayName="Inc Paths" Description="Include serach paths (/I [path])" Switch="/I "[value]"" Delimited="true" Inheritable="true" /> <StringProperty Name="sPPDefs" DisplayName="Preproc Defs" Description="Preprocessor Definitions (/D [symbol])" Switch="/D "[value]"" Delimited="true" Inheritable="true" /> </Properties> </CustomBuildRule> </Rules> </VisualStudioToolFile>
I have more of these for nasm, wmc, etc.
Also, I don't know if I should submit patches for msvc build, I suppose I should even if it is not the official way, because I find msvc/gnuc conditionals there, but the msvc part is broken in many places. I fixed ntoskrnl and its dependencies issues (many in crt) for msvc. Please let me know if I should submit such patches or not, and what would be the proper way to submit these and any other patches. I suppose that initially I should send them to someone for review, right?
I'd prefer to avoid irc or any instant msg system, I hope this channel is adequate for any communication regarding development.
I'm very pleased with the improvements in kd and windbg support. I was working on it and found that I wasted some efforts. No problem, I'll check svn more frequently for changes, but I'd like to know if there is a list somewhere with a description of who is currently doing or planning to do what, to avoid doing the same as someone else again.
I forgot to say, I finished a large project and I'll be dedicating part of my time to reactos for a while, partial time, perhaps until February. Not much, because I'll need to earn money again soon, but I hope I could at least get ntoskrnl running in a regular xp or s2003 install for testing, fixing any compatibility issues, and then incorporating to it a new high performance scheduler (I'm very sensitive to the very low performance of windows in this area). If in the near future I can keep giving some time to this, I'll take a look at bugs in any area, unimplemented things, or perhaps I could help a bit with the audio area. I'd love to work with this much more, as os development has been always my specialty and preferred area, but I have to earn my living.
Jose Catena DIGIWAVES S.L.