I managed to to nmake -f msvc.mak to build both ghostscript and ghostpdl with windows 7 SDK which comes with visual studio c++ express 9 except for two issues - one in wine (http://bugs.winehq.org/show_bug.cgi?id=21394 , which can be worked around by editing cp.bat to remove the nul reference and joining files by hand; I'll possibly fix wine properly myself) and one in ghostscript's psi/msvc32.mak itself - c.f. r9791 from Marcos and r8897 from Russell : Russell added case _NMAKE_VER) == "9.00.21022.08" and RCDIR=C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin and Marcos added case _NMAKE_VER == "9.00.30729.01" to reuse the same code path. On my system with windows 7 SDK, I have _NMAKE_VER == "9.00.30729.01" but RCDIR=C:\Program Files\Microsoft SDKs\Windows\v7.0\bin . Assigned to Marcos for the time being to clarify if on his system _NMAKE_VER == "9.00.30729.01" really comes with v6.0A (and not both v6.0A and v7.0), and depending on the outcome of the question possibly assign back to me for documenting the anomaly in doc/Make.htm or I have these set after installation: INETSDK=c:\Program Files\Microsoft SDKs\Windows\v7.0\. MSSdk=c:\Program Files\Microsoft SDKs\Windows\v7.0 Mstools=c:\Program Files\Microsoft SDKs\Windows\v7.0\. SDKTOOLPATH=c:\Program Files\Microsoft SDKs\Windows\v7.0\bin WINFXSDK=c:\Program Files\Microsoft SDKs\Windows\v7.0\ , so possibly I could test for MSSDK or MSTOOLS or SDLTOOLPATH and set RCDIR accordingly.
Hmm, possibly Marcos should post his environment listing (just type "set" in the visual studio command prompt).
Created attachment 5888 [details] proposed patch proposed patch to work out RCDIR from MSSDK .
Reassign back to support for patch review. It appear that the "v6.0A" part can change - see http://blogs.msdn.com/windowssdk/archive/2008/03/01/integrating-windows-sdk-and-vs-with-new-sdk-configuration-tool.aspx - so it is probably best to determine it from the MSSDK variable.
Assign for review (but it looks fine at first glance)
Please commit the patch.
patch committed as r10689 .