XQuilla/wintools
2020-02-17 22:14:54 +01:00
..
app_dsp.src v2.1.2 2020-02-17 22:14:54 +01:00
filter_dsp.end v2.1.2 2020-02-17 22:14:54 +01:00
filter_dsp.start v2.1.2 2020-02-17 22:14:54 +01:00
genproject.template v2.1.1 2020-02-17 22:13:50 +01:00
lib_paths.sed v2.1.2 2020-02-17 22:14:54 +01:00
README v2.0.0 2020-02-17 22:12:51 +01:00
s_projects v2.1.1 2020-02-17 22:13:50 +01:00
s_win32 v2.1.2 2020-02-17 22:14:54 +01:00
s_win32_common v2.1.2 2020-02-17 22:14:54 +01:00
s_win32_dsp v2.1.2 2020-02-17 22:14:54 +01:00
srcfile_dsp.src v2.1.2 2020-02-17 22:14:54 +01:00
srcfiles.in v2.1.2 2020-02-17 22:14:54 +01:00
xqilla.projects v2.0.0 2020-02-17 22:12:51 +01:00
xqilla.template.xml v2.1.1 2020-02-17 22:13:50 +01:00
xqilla_cmd.dsp.src v2.1.2 2020-02-17 22:14:54 +01:00
xqilla_dsp.src v2.1.2 2020-02-17 22:14:54 +01:00

This directory and the tools here are used to generate Windows
project files for the main XQilla library and related projects.

Both VC6 and Visual Studio 7.1 files are generated.  The
latter can be opened using Visual Studio 2005 (8) and
later releases as well.

The process:

1.  Source (including header) files are added to 2 file:
    (1)srcfiles.in and (2)xqilla.template.xml  See those files for format.
    Be sure to update that file when files are added or removed
    from the project.  At some point, it will probably be possible
    to generate srcfiles.in from xqilla.template.xml, but for now,
    both need to be updated manually.

2.  Run the script, s_win32, which calls the 2 scripts, s_win32_dsp
    and s_projects to generate project files.  These files
    land in ../Win32Projects/{VC6,VC7.1}.  s_projects requires that
    the xqilla command line utility be in your PATH, because it
    uses XQuery and the input XML document (xqilla.template.xml)
    to generate the project files.

The scripts must be run on a Unix-style machine, most likely,
as they use bash and commands that are typically available
on Unix.  They *may* run under cygwin.

DO NOT EVER manually edit the output project files (*.dsp,
*.vcproj).  If changes are required, edit the templates
and scripts and generate the changed projects.

Maintaining 2 mechanisms and 2 file lists is a bit of a hassle,
but at some point, support for VC6 will likely be dropped,
and/or the Todo items below may be done.

Details:

The VC6 scripts use template project files (ending in ".src")
and do a lot of field substitution from configuration found
in these files:
   lib_paths.sed
   s_win32_*

The s_projects script uses lib_paths.sed to substitute
variables in xqilla.template.xml, substitutes the project
name in the XQuery script, genproject.template, then calls the 
xqilla command passing the resulting script, which uses the 
XML document input to generate a specific project file.

Todo:

1.  Generate srcfiles.in from xqilla.template.xml to remove multiple
manual steps.
2.  Maybe generate Makefile.am from xqilla.template.xml as well (or
vice versa).