On 11/17/05, Peter Amstutz <[EMAIL PROTECTED]> wrote:
> Does this mean the Crystal Space will start generating VC2005-compatible
> project files?

I was under the impression that Frank had made some tweaks to the VC7
project files so that they load cleanly in VC2005 without requiring
any conversion. If he did so, and if it works correctly, this should
eliminate problems with CVS conflicts after loading the projects into
VC2005.

If this can't be done, then we probably should start auto-generating
VC2005 project files. This seems reasonable now that VC2005 has been
released officially.

> Incidentally, has anyone used the Crystal Space Jamfile -> vcproj system
> in their own projects?  I'm interested in adopting it to autogenerate VC
> project files from automake files...  If it could be extracted,
> generalized, and documented I think such a tool would be tremendously
> useful to cross-platform free software projects.

All projects which use CS's Jam build system (projects created with
jamtemplate/createproject.sh, for instance) inherit this functionality
for free.

Generally speaking, I intentionally kept msvcgen facility pretty
generic when I created it. It tries to be as project-agnostic as
possible. This same project-agnosticism applies to the templates which
I put together for both MSVC6 and MSVC7. Project-specific
customizations normally are made by inputs to msvcgen, rather than by
altering the template files. This allows the same templates to be used
universally (within reason), and allows projects to update to newer
versions of the templates without having to re-apply local changes.

Although the generality means that the facility should be usable with
other types of build systems, the same generality also requires that
you feed a good deal of information into msvcgen in order to get it to
do your bidding. The type of information which is fed to msvcgen
includes which files reside in which modules, dependencies between
modules, build flags, and so on.

This type of input information is typically exactly the sort of
information about which a build system already knows. In the Jam build
system, we are able to gather this information dynamically because Jam
interprets a somewhat expressive language. With a build system, such
as SCons (www.scons.org), which incorporates a full programming
language (Python, in this case), the task of collecting this
information would be even simpler. Unfortunately, collecting the
necessary information in a build system such as 'make' can be
difficult since 'make' is essentially a static language, so the
information must be maintained by hand.

Automake, on the other hand, might make the task easier. Since
Automake itself already maintains / gleans the type of information
which msvcgen wants as input, it is conceivable that this
functionality could be plugged into Automake. The many Automake-based
projects could then benefit.

-- ES


-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.  Get Certified Today
Register for a JBoss Training Course.  Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_idv28&alloc_id845&op=click
_______________________________________________
Crystal-main mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/crystal-main
Unsubscribe: mailto:[EMAIL PROTECTED]

Reply via email to