Build and setup notes for XMLPartner Proessional.

The build and setup is copied directly from FlashFiler 2 and modified
for XMLPartner Professional.

Build Stuff
-----------

- Machine specific issues. Machine specific build parameters are
  specified in xp\build\setup.bat

- Version specific issues. Version specific paramaters are specified in
  xp\build\setup.bat

- How to add examples. Examples are either for Builder or Delphi. When
  they are for builder, there should be a separate examples for each
  version of Builder that the product supports. To add examples to the
  build please follow the steps below.

1. Make sure the build directory creates the directory that the example
   will reside in. This is done by verifying the directory is created in
   builddir.bat

2. Make sure the example files are copied to the build directory created
   in step 1. This is done by verifying the files are copied and
   date/time stamped in BuildPas.bat. There is a section for each
   supported CBuilder compiler, and one for Delphi. The labels are
   listed below for reference

	CBuilder 3 Examples
	CBuilder 4 Examples
	CBuilder 5 Examples
	Delphi Examples

3. If the example references specific xml documents, it may be
   appropriate to add the file to the common xml files directory. Simply
   check in the file to VSS under Examples\xmldocs, and the build will
   automatically take care of copying it to the build directory and
   date/time stamping it.

4. In many cases it is helpful to have the build compile the example
   application. This is done to verify that the example compiles before
   generating the setup. Compiling examples should be done in
   BuildEXE.bat, there are examples there that can serve as a pattern.

- How to add files to the XMLPartner base file set. Files that serve as
  the standard codebase for XMLPartner are copied individually be
  BuildPAS.bat. Be sure to add any of these files to the copy statements
  under the heading MAIN \XP directory. Also, be sure that the packages
  have been updated to reflect the addition of these files.

- Running the build. The build runs through all the necessary steps
  including building directories, executables, packages. It also will
  fix any version numbering and version specific files to reflect the
  new version. The build does not, at this time, create the installer
  exe and data. To run the build simply change to your dev\tp\xp\build
  directory and type build.bat. Pressing return will execute the build
  process. Once the build is complete, it is time to move on to the
  install process.

INSTALL Stuff
-------------

The install routines are based on those in FlashFiler 2 (which was
originally based on IPRO) The setup.wse script in xp\setup is the
installer script. This script can be used to generate full, and patch
installs of XMLPartner. Note. Do not attempt to modify the install
script by using the wizard. Doing so may corrupt the install script.

The following are reasons to modify the install script.

- Creating a patch for a new version of XMLPartner - Adding
  files/examples to the installation. - Creating an install for a new
  minor version of the product

The text below descibes the changes necessary for each of the above.

1. Creating a patch for a new version of XMLPartner.

	When creating a patch for XML Parter, it is assumed that a
	previous version was already shipped. Since patches only update
	known previous versions of XMLPartner it is necessary to let
	the installer know where to find the previous versions of
	specific files. To do this, execute the following steps after
	the script has been opened in Wise6

  a. Search for the 3rd instance of the following text "_PATCHING_" b.
     double click on the first "Install File" command (XpParser.pas)to
     bring up the Install Files from Installation Executable dialog. c.
     Update the SmartPatch group box with the following information. -
     Under previos file versions, there should be an entry for each
     shipping version of XMLPartner prior to the version that this
     installer will install d. Do the same for the second Install File
     command (XpDom.pas)

2. Adding files/examples to the installation.

	When files or examples have been added to the build, they will
	also need to be added to the installer. Files fall under
	different categories which are listed below with instructions.

 - Core (required) source files. - core source files are specified
	individually under the comment "All other files not patched".
	Use an existing core file Install File command as a pattern when
	it is necessary to add new files.

  - Binaries. Binaries are installed to the root installation directory
	and are specified individually under the comment "Install
	Binaries" Binaries are considered part of the core installation
	by the installer, and are installed regardless of the options a
	user may have selected. Use an existing binary file Install File
	command as a pattern when it is necessary to add new files.

   - Examples Examples are installed on a per compiler basis. One set of
	examples is installed for all Delphi compilers, and one set is
	installed for each individual builder compiler. Example files
	are specified individually by the installer. The following table
	describes the compiler, and text to search for to find the
	example installation commands.

	Delphi		- "Delphi Examples" CBuilder3	- 'C++ Builder 3
	examples" CBuilder4	- 'C++ Builder 4 examples" CBuilder5 -
	'C++ Builder 5 examples"

When installing examples it is important to install them in the correct
directories. See existing example installation commands for specific
information.

3. Creating an install for a new minor version of the product.

	When creating any new install it is necessary to update the
	version number and Finish32 information for the product. In the
	Installation Properties dialog (the glasses icon gets you there)
	under the Compiler Variables tab resides two variables that
	should be kept up-to-date. These are the VERSTR and _VERSION_
	variables. The VERSTR variable is used when specifying the
	package names to install. The _VERSION_ variable is used when
	displaying the version of the patch that is being installed.
