summaryrefslogtreecommitdiff
path: root/ACE/MPC/history/ChangeLog-3_3
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/MPC/history/ChangeLog-3_3')
-rw-r--r--ACE/MPC/history/ChangeLog-3_31985
1 files changed, 1985 insertions, 0 deletions
diff --git a/ACE/MPC/history/ChangeLog-3_3 b/ACE/MPC/history/ChangeLog-3_3
new file mode 100644
index 00000000000..604c8172b6f
--- /dev/null
+++ b/ACE/MPC/history/ChangeLog-3_3
@@ -0,0 +1,1985 @@
+Thu Jul 20 14:49:21 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/WorkspaceCreator.pm:
+
+ Fixed a bug where an invalid project name would be used during the
+ generation of implicit project dependencies.
+
+Tue Jul 18 19:07:02 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/Creator.pm:
+
+ Do not perform slash conversion on the 'prebuild' and 'postbuild'
+ settings.
+
+ * templates/vc8csharp.mpd:
+
+ Keep the 'prebuild' and 'postbuild' settings on the same line as
+ vc8 does.
+
+Tue Jul 18 14:38:01 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/AutomakeWorkspaceCreator.pm:
+
+ Modified the library location code to accept libraries that
+ happen to be built in the very top-most directory.
+
+Tue Jul 18 13:49:01 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/ProjectCreator.pm:
+
+ Corrected a logic error in the processing of the 'optional'
+ section. The '||' was not being handled properly.
+
+Fri Jul 14 17:25:16 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/ProjectCreator.pm:
+
+ When expanding variables, through the 'expand' mechanism, escape
+ back slashes when generating a project for a project type that
+ requires slash conversion.
+
+Fri Jul 14 01:10:35 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * config/qt.mpb:
+
+ Split the UIC into UIC and UIC_Impl. The header is generated by
+ the UIC custom definition and the source file generated by the
+ UIC_Impl custom definition.
+
+ * config/qt4_core.mpb:
+ * config/qt4_designer.mpb:
+ * config/qt4_designercomponents.mpb:
+ * config/qt4_gui.mpb:
+ * config/qt4_network.mpb:
+ * config/qt4_opengl.mpb:
+ * config/qt4_sql.mpb:
+ * config/qt4_svg.mpb:
+ * config/qt4_test.mpb:
+ * config/qt4_xml.mpb:
+
+ Added support for Qt4.
+
+ * config/qt_moc.mpb:
+ * config/qt_uic.mpb:
+
+ Removed these files. They have been deprecated long enough.
+
+Thu Jul 13 16:29:33 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/bmake.mpd:
+ * templates/bmakedllexe.mpt:
+ * templates/bmakelibexe.mpt:
+ * templates/em3.mpd:
+ * templates/em3vcpdllexe.mpt:
+ * templates/nmake.mpd:
+ * templates/nmakeexe.mpt:
+ * templates/vc6.mpd:
+ * templates/vc6dspdllexe.mpt:
+ * templates/vc7.mpd:
+ * templates/vc7csharp.mpd:
+ * templates/vc7exe.mpt:
+ * templates/vc7vb.mpd:
+ * templates/vc8.mpd:
+ * templates/vc8csharp.mpd:
+ * templates/vc8exe.mpt:
+
+ Added a template variable named 'windows_style' that controls the
+ location of Debug executables and all installed executables. If
+ 'windows_style' not set, which is the default, a Debug executable
+ is placed in the same directory as the project (default setting
+ for 'output_dir'). If it is set, the Debug executable is placed
+ in the Debug directory.
+
+ Similarly, if 'windows_style' is not set, installed executables
+ are placed in the directory determined by the 'install' project
+ variable. If it is set, it is placed in the directory determined
+ by the 'install' project variable plus the 'output_dir' template
+ variable.
+
+ This only applies to the following project types: bmake, em3, vc6,
+ vc7, vc71 and vc8.
+
+Tue Jul 11 14:23:41 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * USAGE:
+ * modules/VC8ProjectCreator.pm:
+
+ It has been determined that when building static projects with
+ vc8, the inter-project dependencies between static libraries are
+ handled correctly. The dependee is not included in the dependent
+ as is done in em3, vc6, vc7 and vc71.
+
+Tue Jul 11 11:42:25 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * USAGE:
+ * config/.cvsignore:
+ * modules/ConfigParser.pm:
+ * modules/Creator.pm:
+ * modules/Driver.pm:
+ * modules/OutputMessage.pm:
+ * modules/Parser.pm:
+ * modules/WorkspaceCreator.pm:
+
+ Added the ability for MPC to be configured via two configuration
+ files. The first configuration file, codebase.cfg, controls where
+ MPC looks for the second configuration file, MPC.cfg. By default
+ it will look in $MPC_ROOT/config/MPC.cfg. This configuration file
+ will replace all (but one) environment variables and allow for more
+ things to be controlled.
+
+ Use of the deprecated environment variables will result in
+ messages be printed to that effect.
+
+ * modules/AutomakeWorkspaceCreator.pm:
+ * templates/automake.mpd:
+
+ Added the 'libpaths' setting to the automake template. This also
+ required a code change due to the strictness of automake. If the
+ libpath does not exist, the make will fail so I added the libpaths
+ as dependencies and we attempt to make the directories if they
+ don't exist.
+
+ * modules/TemplateParser.pm:
+ * templates/em3.mpd:
+ * templates/ghs.mpd:
+ * templates/vc6.mpd:
+ * templates/vc7.mpd:
+ * templates/vc8.mpd:
+
+ Fixed additional dependencies specified by the custom definition
+ 'dependent' setting. Previously, if a dependent did not end in
+ .pl or .pm a .exe was appended. Now, if the dependent does not
+ have an extension a .exe is appended.
+
+ Also, for vc*.mpd, if multiple commands make up a custom command
+ (through postcommand or pch_postrule) they are chained together
+ with && to ensure that all commands are run.
+
+ * templates/vc7csharp.mpd:
+ * templates/vc7vb.mpd:
+ * templates/vc8csharp.mpd:
+
+ Added or modified the custom section such that custom defintions
+ without commands are still added to the project.
+
+Tue Jul 11 00:48:01 UTC 2006 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * templates/vc7.mpd:
+ Added support for ModuleDefinitionFile
+
+Thu Jul 6 14:54:01 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/ProjectCreator.pm:
+
+ A problem could arise when generating the default component lists.
+ It all depended upon the order of a 'keys' call for the valid
+ component types. I first noticed this in 2004, but with Perl 5.8,
+ the keys always came out such that everything just worked.
+ However, with Perl 5.6.1 the keys do not come out as required.
+ This requirement is that user defined component types must be
+ processed before built-in types, most importantly Source_Files. I
+ now sort the keys such that the user defined component types are
+ processed before built-in types.
+
+Wed Jul 5 17:11:28 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/ProjectCreator.pm:
+
+ There was a difference in the way that MPC dealt with a defaulted
+ Source_Files section and a Source_Files section that was just a
+ list of directories. Generated files were treated differently in
+ the defaulted case. This change corrects that problem.
+
+ Additionally, files listed with >> and << did not receive slash
+ conversion when being output to a generated project when the
+ project type required it. This has also been corrected.
+
+Fri Jun 30 15:32:12 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/ProjectCreator.pm:
+
+ Fixed a bug re-introduced by my change from Tue Jun 27 17:33:59
+ UTC 2006. If gendir = . is used in a custom build rule, the
+ generated files would not have the needed ./ prepended to the file
+ name.
+
+ * modules/VC8WebWorkspaceCreator.pm:
+
+ Removed invalid configurations for the web workspace.
+
+Thu Jun 29 16:33:13 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * README:
+ * modules/ProjectCreator.pm:
+ * modules/XMLProjectBase.pm:
+
+ Fixed a bug where a backslash was added to the front of a double
+ quote when the <%quote%> pseudo variable is used. If an escaped
+ double quote is required, use <%equote%> (as described in the
+ README).
+
+Tue Jun 27 17:33:59 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * PROBLEM-REPORT-FORM:
+
+ Added a spot for the operating system and shell.
+
+ * modules/ProjectCreator.pm:
+
+ When creating the list of generated files, retain the original
+ file extension. If the original input file extension does not
+ match the first extension listed in the custom definition inputext
+ setting, the extension will be lost and file specific settings
+ will not be applied correctly.
+
+ * modules/WorkspaceCreator.pm:
+
+ When adding implicit project dependencies, for the gnuace project
+ type only, keep track of the indirect dependencies that have been
+ followed to avoid infinite recursion.
+
+Thu Jun 22 12:24:51 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/VC7WorkspaceCreator.pm:
+
+ Modified the mixed language output so that VC8 does not want to
+ save after the first load of the generated solution.
+
+Wed Jun 21 14:16:22 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/VC7WorkspaceCreator.pm:
+
+ Yet another bug fix for mixed language workspaces. When a C++
+ project is dependent upon another C++ project and a C# project,
+ the dependee C++ project would be skipped. Now, non-C++ projects
+ will be built when the platform is changed to anything other than
+ 'Any CPU' or .NET.
+
+Tue Jun 20 13:53:05 2006 J.T. Conklin <jtc@acorntoolworks.com>
+
+ * templates/automake.mpd:
+
+ Tweak "code" that emits -stamp dependency to work with stamp
+ files in subdirectories.
+
+Tue Jun 20 18:31:35 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/vc8csharp.mpd:
+
+ Added the ability to set the RegisterForComInterop setting as a
+ template variable.
+
+Tue Jun 20 17:06:50 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/ProjectCreator.pm:
+ * modules/TemplateParser.pm:
+
+ Fixed a bug where mixing C++ and C# projects in a single workspace
+ would result in invalid projects due to the fact that a project
+ creator would have only one TemplateInputReader which would read
+ the template input file for the first projects language and all
+ other projects would receive the same template input.
+
+ Additionally, the configuration/platform combination would only be
+ updated if the platform is a non-empty string.
+
+ And finally, the ability to nest template functions (like reverse,
+ sort, etc.) not in the context of a foreach has been added to the
+ template parser.
+
+Tue Jun 20 12:45:30 UTC 2006 James H. Hill <hillj@isis.vanderbilt.edu>
+
+ * modules/VC8WebWorkspaceCreator.pm:
+
+ Changed the location of the web project from the cwd to
+ '.'.
+
+Tue Jun 20 12:41:49 UTC 2006 James H. Hill <hillj@isis.vanderbilt.edu>
+
+ * templates/vc8csharp.mpd:
+
+ Removed the aspx_files variable since web projects assume all
+ files located in the directory of the solution is part of the
+ project.
+
+Fri Jun 16 00:37:06 UTC 2006 James H. Hill <hillj@isis.vanderbilt.edu>
+
+ * modules/VC7WorkspaceCreator.pm:
+
+ Added the web project guid to the rest of the GUIDs. This
+ allows use to resue the the default VC workspace generator
+ to generate web projects.
+
+ * modules/MPC.pm:
+ * modules/MWC.pm:
+ * modules/VC8WebProjectCreator.pm:
+ * modules/VC8WebWorkspaceCreator.pm:
+
+ Created a new module for generating web projects for VC8.
+ In VC8, web projects are based on the directory that contains.
+ the solutions. This means a web project does not have a "project"
+ file like C++, C# and VB projects. Therefore, a new module
+ was needed to automatically create a web project in a solution
+ since we can't specify this using a MWC file.
+
+ To create a web project, just run MWC as follows:
+
+ mwc.pl -type vc8web
+
+ The following are the language -> scripting mappings:
+ cpluplus -> C#
+ csharp -> C#
+ java -> J#
+ vb -> Visual Basic
+
+Fri Jun 09 14:49:25 2006 Steve Huston <shuston@riverace.com>
+
+ * modules/AutomakeProjectCreator.pm (fill_value): Reverted:
+ Tue May 23 16:49:22 2006 Steve Huston <shuston@riverace.com>
+ since it's not always correct to prefix to $srcdir. Sometimes
+ it needs to be relative to the build directory. This restores the
+ behavior put in place by:
+ Thu Dec 22 13:56:14 2005 J.T. Conklin <jtc@acorntoolworks.com>
+ Thanks to J.T. for pointing this out.
+
+Fri Jun 9 07:00:13 2006 J.T. Conklin <jtc@acorntoolworks.com>
+
+ * templates/automake.mpd:
+
+ Tweak so that _LDFLAGS isn't defined if am_version is defined,
+ but library is not intended to be installed.
+
+Wed Jun 7 12:56:17 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/vc8.mpd:
+
+ Modified this template to use 'libout' again such that .lib files
+ do not go into the location specified by 'dllout' (if it was
+ specified). Thanks to Kitty B. for recognizing this situation and
+ bringing it to my attention.
+
+Tue May 30 12:21:54 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/Driver.pm:
+
+ Removed the run-time check for the minimum perl version.
+
+ * mpc.pl:
+ * mwc.pl:
+
+ Added a load-time check for the minimum perl version (5.6).
+
+Tue May 23 16:49:22 2006 Steve Huston <shuston@riverace.com>
+
+ * modules/AutomakeProjectCreator.pm (fill_value): If an include
+ path begins with ".." (a relative path), prefix it with $(srcdir)
+ to make it work properly when the build dir is not the same as the
+ source dir.
+
+Thu May 11 11:46:45 2006 Steve Huston <shuston@riverace.com>
+
+ * templates/automake.mpd: Allow an am_release variable to set
+ a installable library's -release option. This allows users to
+ choose whether to use libtool's -version-info option (with the
+ am_version variable) or the -release option (with am_release).
+
+Fri May 5 12:00:12 UTC 2006 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * modules/BDSWorkspaceCreator.pm:
+ Generate missing </BorlandProject>
+
+Wed May 3 01:43:46 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * USAGE:
+
+ Documented the -gendot option which generates input files for
+ Graphvis.
+
+ * modules/BMakeProjectCreator.pm:
+ * modules/Creator.pm:
+ * modules/DirectoryManager.pm:
+ * modules/Driver.pm:
+ * modules/FeatureParser.pm:
+ * modules/GUID.pm:
+ * modules/Options.pm:
+ * modules/ProjectCreator.pm:
+ * modules/TemplateParser.pm:
+ * modules/VC7ProjectCreator.pm:
+ * modules/WorkspaceCreator.pm:
+
+ Adding various performance improvements.
+
+ * templates/makedll.mpt:
+
+ Changing the order of the rt and pthread libraries to avoid
+ possible linking problems when statically linking.
+
+Tue Apr 25 13:18:06 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * clone_build_tree.pl:
+
+ Print error messages in the event that an error actually occurs.
+
+ * prj_install.pl:
+
+ Added a missing option from the usage.
+
+ * templates/nmake.mpd:
+ * templates/nmakedll.mpt:
+ * templates/nmakeexe.mpt:
+
+ By default, pass the /Zc:wchar_t option to the compiler. If you
+ plan on using nmake with Visual C++ 6.0, you must unset the
+ 'TreatWChar_tAsBuiltInType' template variable to avoid compiler
+ warnings about unknown options.
+
+ * templates/vc7.mpd:
+
+ Allow the user to modify the inline expansion through the
+ 'InlineFunctionExpansion' template variable.
+
+ * templates/vc7csharp.mpd:
+ * templates/vc8csharp.mpd:
+
+ Support the 'prebuild' setting.
+
+Thu Apr 20 13:29:13 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/em3.mpd:
+ * templates/em3vcpdll.mpt:
+ * templates/em3vcpdllexe.mpt:
+ * templates/em3vcplib.mpt:
+ * templates/em3vcplibexe.mpt:
+
+ Fixed a bug where /debug was being added to the link flags even
+ though it was a Release configuration. Thanks to Wallace Zhang
+ <zhangw@ociweb.com> for finding this.
+
+Fri Mar 31 13:25:32 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/WorkspaceCreator.pm:
+
+ Fixed a bug in the group dependency sorter. The circular
+ dependencies are checked but as a group moves in order, it was
+ assumed that the dependencies were already checked for the group
+ when in reality it hadn't. This could cause an infinite loop.
+
+ Also, $() type variables can be used in workspaces.
+
+Mon Mar 27 17:00:31 UTC 2006 James H. Hill <hillj@isis.vanderbilt.edu>
+
+ * modules/ProjectCreator.pm:
+
+ Added support of ASP.NET project files (.aspx files) to both
+ Visual Basic and C# project.
+
+ * templates/vc7vb.mpd:
+
+ - Changed default extension for resx files from .cs to .vb
+ - Added template code to correctly handle .aspx files
+
+ * templates/vc7csharp.mpd:
+ * templates/vc8csharp.mpd:
+
+ - Added template code to correctly handle .aspx files
+
+Thu Mar 23 14:56:12 UTC 2006 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * templates/bds.mpd:
+ If linkflags contains -aa then generate option.aa.enabled as 1.
+
+Thu Mar 23 14:51:12 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/vc7.mpd:
+ * templates/vc8.mpd:
+
+ Added the missing UNICODE and _UNICODE macros to the resource file
+ compile line if the 'unicode' template variable is set.
+
+Thu Mar 23 14:30:00 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/Driver.pm:
+
+ Convert all back slashes to slashes before calling mpc_basename().
+
+ * templates/makedll.mpt:
+
+ Added -ldl to the vxworks_rtp platform section.
+
+ * templates/vc7.mpd:
+
+ Moved the ProgramDataBaseFileName down after the precompiled
+ header section to more closely match the way visual studio
+ produces project files.
+
+Thu Mar 23 12:11:12 UTC 2006 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * templates/bmake.mpd:
+ If linkflags are available, generate them into the project
+ file
+
+Thu Mar 16 17:58:37 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/VC8ProjectCreator.pm:
+
+ Fixed a bug where the SUPER version of the translate_value()
+ wasn't called at the end of the local translate_value() method.
+ This was causing problems when the -name_modifier and
+ -apply_project options were used together.
+
+ * templates/makedll.mpt:
+
+ Fixed support for VxWorks.
+
+Wed Mar 15 18:44:03 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * generate_export_header.pl:
+
+ Print an error if the script is unable to write to the output
+ file.
+
+ * modules/MakeProjectCreator.pm:
+ * templates/makedll.mpt:
+
+ Moved the default 'compilers' setting from the mpt to the perl
+ module to allow the default compiler to change based on the
+ language setting. Currently, the default is 'java' if the
+ language is set to java otherwise it is set to 'gcc' as it was
+ previously.
+
+ * README:
+ * modules/AutomakeWorkspaceCreator.pm:
+ * modules/ProjectCreator.pm:
+ * modules/TemplateParser.pm:
+ * templates/automake.mpd:
+ * templates/bmake.mpd:
+ * templates/em3.mpd:
+ * templates/ghs.mpd:
+ * templates/make.mpd:
+ * templates/nmake.mpd:
+ * templates/vc6.mpd:
+ * templates/vc7.mpd:
+ * templates/vc8.mpd:
+
+ Implemented a new project keyword that can only be used within the
+ scope of Source_Files. The 'buildflags' setting can be used to
+ specify additional build flags as source files are being compiled.
+ This can be used to build a particular subset of source files with
+ different compiler options.
+
+Tue Mar 14 14:19:03 2006 Steve Huston <shuston@riverace.com>
+
+ * templates/vc8platforms.mpt: For WinCE 4-based platforms, add
+ EnableFunctionLevelLinking="true". This works around a link-time
+ warning LNK1166 for ARM processors. This prevented ACEd.dll (and
+ some other examples/test programs) from creating the resultant
+ binary dll/exe file.
+
+Mon Mar 13 17:53:45 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/Driver.pm:
+
+ If global.features, default.features, global.mpb or default.rel
+ are not found in the path relative to the location of mwc.pl (or
+ mpc.pl), look for them in the config directory found underneath
+ MPC. This only matters when working in conjunction with ACE.
+
+Fri Mar 10 18:59:34 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/BMakeWorkspaceCreator.pm:
+ * modules/Creator.pm:
+ * modules/DirectoryManager.pm:
+ * modules/Driver.pm:
+ * modules/FeatureParser.pm:
+ * modules/HTMLProjectCreator.pm:
+ * modules/MakeWorkspaceCreator.pm:
+ * modules/NMakeWorkspaceCreator.pm:
+ * modules/WorkspaceCreator.pm:
+
+ Implemented a new function, mpc_basename, that is more efficient
+ than the one provided by File::Basename.
+
+ * modules/ProjectCreator.pm:
+
+ Moved code outside of add_corresponding_component_files that was
+ executed twice. The result could not possibly change, so it is
+ executed once and the result is passed into
+ add_corresponding_component_files.
+
+ * modules/TemplateParser.pm:
+
+ Optimized code to avoid using substr() in parse_line().
+
+Thu Mar 9 16:20:24 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/CBXProjectCreator.pm:
+ * modules/CBXWorkspaceCreator.pm:
+ * templates/cbx.mpd:
+ * templates/cbxdll.mpt:
+ * templates/cbxexe.mpt:
+
+ Removed these files.
+
+ * USAGE:
+ * config/boost_date_time.mpb:
+ * config/boost_filesystem.mpb:
+ * config/boost_iostreams.mpb:
+ * config/boost_prg_exec_monitor.mpb:
+ * config/boost_program_options.mpb:
+ * config/boost_regex.mpb:
+ * config/boost_serialization.mpb:
+ * config/boost_signals.mpb:
+ * config/boost_test_exec_monitor.mpb:
+ * config/boost_thread.mpb:
+ * config/boost_wave.mpb:
+ * config/xerces.mpb:
+ * modules/MPC.pm:
+ * modules/MWC.pm:
+
+ Removed the cbx project type. The format is dead and has been
+ replaced by the bds format.
+
+ * README:
+ * templates/bmake.mpd:
+ * templates/html.mpd:
+ * templates/make.mpd:
+ * templates/nmake.mpd:
+ * templates/vc7.mpd:
+ * templates/vc8.mpd:
+ * modules/ProjectCreator.pm:
+
+ Added partial support for prebuild. Some project types can't or
+ can't easily support this concept.
+
+ * modules/DirectoryManager.pm:
+ * modules/WinProjectBase.pm:
+
+ Moved a portion of the code to remove the current working
+ directory from WinProjectBase's version of translate_directory()
+ into DirectoryManager's version.
+
+Mon Mar 6 18:09:36 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * config/qt.mpb:
+
+ The qt library can have a variety of suffixes (depending on
+ platform and version). This base project was changed such that
+ there is no 'specific' section for for the qt library name. It is
+ added to 'lit_libs' as qt-mt$(QT_VERSION).
+
+ * generate_export_header.pl:
+
+ This is a new script that will generate an export header file that
+ can be used (not in conjunction with ACE) to support symbol
+ visibility using a variety of compilers.
+
+ * modules/BMakeProjectCreator.pm:
+ * modules/BMakeWorkspaceCreator.pm:
+ * modules/Creator.pm:
+ * modules/DirectoryManager.pm:
+ * modules/Driver.pm:
+ * modules/HTMLProjectCreator.pm:
+ * modules/NMakeWorkspaceCreator.pm:
+ * modules/Options.pm:
+ * modules/ProjectCreator.pm:
+ * modules/TemplateParser.pm:
+ * modules/VC7WorkspaceCreator.pm:
+ * modules/WinProjectBase.pm:
+ * modules/WorkspaceCreator.pm:
+
+ The majority of the changes to these files are performance
+ related. However, two bug fixes are included (one pertaining to
+ file grouping and the other pertaining to directory translation of
+ a directory only containing "..").
+
+ * templates/make.mpd:
+
+ Three modifications:
+
+ 1) Only set PICFLAGS if the dll_ext template variable is defined.
+ 2) Allow the user to override the 'chmod' template variable.
+ 3) Removed the .<%slash%> in front of the call to "specialscript"
+
+ * templates/makedll.mpt:
+
+ Added -mthreads -mminimal-toc compiler flags for LynxOS.
+
+ * templates/vc7.mpd:
+ * templates/vc8.mpd:
+
+ Fixed whitespace for default grouped files.
+
+Mon Feb 27 17:35:55 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * config/zlib.mpb:
+
+ Changed the Windows section of the zlib library to use libs
+ instead of lit_libs. It is necessary to match up debug to
+ debug and release to release when linking an application with this
+ library.
+
+Fri Feb 24 00:23:57 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/ProjectCreator.pm:
+
+ Removed calls to escape_regex_special() before calling
+ generated_filenames(). This was breaking when files with regular
+ expression special characters (like .) were listed.
+
+Thu Feb 23 10:33:25 2006 J.T. Conklin <jtc@acorntoolworks.com>
+
+ * templates/automake.mpd:
+
+ Added "compile_flags" to conditional which caused a needed
+ backslash not to be emitted in somewhat rare circumstances.
+
+Thu Feb 23 14:10:30 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * README:
+
+ Added a paragraph explaining that MPC expects *all* file names
+ that contain a directory portion to use forward slashes regardless
+ of what the platform natively uses.
+
+ * modules/ProjectCreator.pm:
+
+ Corrected two bugs pertaining to automatic file addition. The
+ first happens when two different custom file sections have the
+ same group name; the second group would overwrite the first. The
+ second bug would only happen on Windows based project types if the
+ 'gendir' setting contained a slash, MPC wouldn't be able to match
+ up the generated files (this was introduced with my change from
+ Mon Feb 13 11:15:04 2006).
+
+Wed Feb 22 23:58:03 2006 J.T. Conklin <jtc@acorntoolworks.com>
+
+ * templates/automake.mpd:
+
+ Fix typo which caused compile_flags to be emitted for each
+ individual compile_flag.
+
+Wed Feb 22 20:06:00 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * combine_dsw.pl:
+
+ Support combining .vcw files too. They are almost identical to
+ .dsw files.
+
+ * modules/ProjectCreator.pm:
+
+ Removed the $rmesc parameter from the generated_filenames() and
+ generated_filename_arrys() methods. We will always remove the
+ escape sequences from the generated file names. In the one place
+ where the escapes are needed, we use escape_regex_special() to
+ ensure that the whole file name (including the path) is escaped.
+
+ * modules/VC6WorkspaceCreator.pm:
+
+ Sort the projects so that the generated workspace will be
+ deterministic.
+
+ * modules/WinProjectBase.pm:
+
+ Modified translate_directory() to remove the current working
+ directory from the directory passed in and then limit the length
+ of that to avoid issues with maximum directory/file length on
+ NTFS.
+
+ * templates/bmake.mpd:
+ * templates/bmakecommon.mpt:
+ * templates/bmakedll.mpt:
+ * templates/bmakedllexe.mpt:
+ * templates/bmakelibexe.mpt:
+
+ Support building with VCL. Also, add the custom_type libpath
+ setting to the PATH variable.
+
+ * templates/make.mpd:
+ * templates/makedll.mpt:
+
+ Added support for visibility attributes. They are off by default,
+ so set the 'visibility' template variable to 1 to then them on.
+ Also, when generating the clean target, clean the extra
+ directories relative to the output location of the makefile
+ target.
+
+Tue Feb 21 18:14:21 2006 Steve Huston <shuston@riverace.com>
+
+ * templates/vc8.mpd: Put .lib files with .dll files in $(OutDir).
+ When emitting AdditionalLibraryDirectories and there is a specified
+ output_subdir, append output_subdir to each libpath, then the
+ plain libpath. This picks up output_subdir specs and hopefully
+ won't hurt anything for libpaths that don't have the subdirs.
+
+Thu Feb 16 21:36:37 UTC 2006 Wallace Zhang <zhangw@ociweb.com>
+
+ * highlight_template.pl:
+
+ Added a newline at the end of the file which is required
+ by fuzz.pl.
+
+Thu Feb 16 19:53:13 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * highlight_template.pl:
+
+ Added a tool which can be helpful in debugging MPC template code.
+ This utility will color highlight an MPC template and output html.
+
+ * modules/Driver.pm:
+
+ Perl 5.8.8 has a "feature" where basename('') returns './' instead
+ of '' as all other versions do. In the case where we may call
+ basename() with an empty string, avoid calling basename() and just
+ use '' instead. Thanks to Johnny Willemsen for helping me debug
+ this one.
+
+ * modules/HTMLWorkspaceCreator.pm:
+
+ Output the projects in build order instead of alphabetical order.
+
+ * templates/make.mpd:
+
+ Greatly simplified this template by removing many little foreach's
+ and enclose most of the template in two big foreach's.
+
+Wed Feb 15 19:41:59 2006 J.T. Conklin <jtc@acorntoolworks.com>
+
+ * templates/automake.mpd:
+
+ Process header_files, inline_files, template_files, idl_files,
+ and pidl_files even if we're not building a executable or lib.
+ This ensures the files will be listed in the Makefile.am (for
+ "make distcheck" and/or for "make install").
+
+Wed Feb 15 17:56:02 2006 Steve Huston <shuston@riverace.com>
+
+ * templates/nmakedll.mpt:
+ * templates/nmakeexe.mpt: Changed WinX86_64 platform name to x64 to be
+ consistent with vc8platforms.mpt. Also set _M_AMD64 in cpu_defines,
+ not _M_AXP64 to be consistent with what Microsoft headers are
+ expecting; also added _AMD64_ to ensure it gets set - windows.h
+ sets it, but if including winnt.h first, it doesn't get set.
+ Thanks to Johnny Willemsen for motivating this change.
+
+Wed Feb 15 18:42:30 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * README:
+ * modules/ProjectCreator.pm:
+
+ Added two new pseudo variables 'cmp' for a platform non-specific
+ way to compare files and 'os' which provides the type of operating
+ system the project is suited for (win32 or unix).
+
+ * registry.pl:
+
+ Register .mpb files just as .mpc files are registered.
+
+Wed Feb 15 16:03:06 UTC 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * config/boost_base.mpb:
+
+ Added an include path for $(BOOST_ROOT).
+
+ * config/bzip2.mpb:
+ * config/global.features:
+
+ Added a bzip2 feature project and set the bzip2 feature to zero by
+ default.
+
+ * config/zlib.mpb:
+
+ Switch from libs to lit_libs so that no decorator is added to the
+ library name.
+
+ * modules/ProjectCreator.pm:
+
+ Accept .ipp as inline files.
+
+ * templates/make.mpd:
+ * templates/makedll.mpt:
+
+ Provide library versioning on platforms that support it. Added
+ initial support for the intel compiler on Linux.
+
+ * templates/vc7.mpd:
+
+ Allow switching off exception handling.
+
+Tue Feb 14 17:06:40 2006 Steve Huston <shuston@riverace.com>
+
+ * templates/vc8platforms.mpt: Changed the WinX86_64 platform to be
+ x64 to match what VC8 generates itself and expects. Also added
+ x64 to the platforms generated by default.
+
+Mon Feb 13 11:15:04 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * config/global.features:
+
+ Set the swig_perl, swig_java and python features to zero.
+
+ * config/python.mpb:
+
+ Added a base project for building against the python library.
+
+ * config/swig_java.mpb:
+
+ Added a requires += swig_java.
+
+ * config/swig_perl.mpb:
+
+ Added a requires += swig_perl.
+
+ * modules/ProjectCreator.pm:
+
+ Fixed a problem where if a file is automatically generated and
+ gendir is set to '.', the file name may be added twice to a
+ project.
+
+ When automatically adding files specified by >>, take into account
+ the gendir setting.
+
+ Added a post project creation hook so that sub-classes of
+ ProjectCreator can perform an action after a project file is
+ created.
+
+ * modules/TemplateParser.pm:
+
+ Renamed the basename() function to tp_basename().
+
+ * modules/VC8ProjectCreator.pm:
+
+ Use the post file creation hook to remove the .user files created
+ by VC8. The .user file will only be removed if the project file
+ is different than what was created by prior runs of MPC.
+
+ * README:
+ * modules/WorkspaceCreator.pm:
+
+ Allow the user of -genins within a workspace.
+
+ * templates/bmake.mpd:
+
+ Put double quotes around gendir related files just in case gendir
+ has a directory with spaces in the name. Also, prefix all del and
+ rmdir commands with - to continue on if there is an error.
+
+ * templates/make.mpd:
+ * templates/makedll.mpt:
+
+ Changed the way that the 'configurations' template variable is used.
+ The existing use has been renamed to 'compilers' and the
+ 'configurations' template variable is now used as it is in many of
+ the other project types, as Debug or Release.
+
+Fri Feb 10 06:36:59 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/Options.pm:
+
+ Fixed a bug where a -exclude argument with a comma in it would not
+ be split.
+
+ * modules/ProjectCreator.pm:
+
+ Reverted a change that affected the way files were listed in
+ templates when gendir = . was used.
+
+ * templates/ghs.mpd:
+ * templates/ghscommon.mpt:
+
+ Changed libdecorator to lib_modifier to be consistent with all of
+ the other templates.
+
+Fri Feb 10 11:26:12 UTC 2006 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * templates/vc8platforms.mpt:
+ For x86_64 specify an explicit link option
+
+ * templates/nmake.mpd:
+ Added platform_defines to the list of defines being generated,
+ this is as with the normal vc templates
+
+ * templates/nmakedll.mpt:
+ * templates/nmakeexe.mpt:
+ Added platform_defines and updated cpu_define to the same
+ value used as with the normal vc templates for WinX86_64
+
+Thu Feb 9 12:50:52 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * config/boost_iostreams.mpb:
+ * config/boost_program_options.mpb:
+ * config/boost_python.mpb:
+ * config/boost_serialization.mpb:
+ * config/boost_wave.mpb:
+
+ Added support for other boost libraries.
+
+ * modules/DirectoryManager.pm:
+ * modules/Options.pm:
+
+ Added support for wildcards when using the -exclude option.
+
+ * modules/ProjectCreator.pm:
+
+ When the Define_Custom has the automatic flag set to 1,
+ automatically add the files generated that are specified by the >>
+ operator.
+
+ Fixed a bug where <% %> variables used within a 'specific' section
+ were not translated.
+
+ * modules/TemplateParser.pm:
+
+ Fixed a bug where errors within a <%foreach%> would be silently
+ ignored.
+
+ * modules/WorkspaceCreator.pm:
+
+ Added support for wildcards.
+
+ * templates/bmake.mpd:
+ * templates/bmakedll.mpt:
+ * templates/bmakedllexe.mpt:
+ * templates/bmakelib.mpt:
+ * templates/bmakelibexe.mpt:
+
+ Fixed a bug where debug_flags was being placed in all
+ configurations, not just debug. And modified these, so that debug
+ flags are only emitted in a debug configuration (when optimze is
+ overriden to be zero).
+
+ * templates/em3.mpd:
+ * templates/em3vcpdll.mpt:
+ * templates/em3vcpdllexe.mpt:
+ * templates/em3vcplibexe.mpt:
+
+ EVC 4.0 doesn't support "utility" projects, so when custom_only is
+ set to 1, just create a DLL project that has no target. Also,
+ fixed link issues for the emulator and x86 targets. And, sort the
+ grouped files so that a project can be reproduced consistently.
+
+ * templates/vc6.mpd:
+ * templates/vc7.mpd:
+ * templates/vc8.mpd:
+
+ Sort the grouped files so that a project can be reproduced
+ consistently.
+
+Thu Feb 2 07:02:19 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * clone_build_tree.pl:
+
+ Do not clone the .svn directory. It's administrative just like
+ the CVS directory.
+
+ * modules/ProjectCreator.pm:
+
+ There was a bug where file with a path specified using the '>>'
+ operator would not be processed correctly on Windows based project
+ types. Thanks to Thomas Rothfuss for reporting this.
+
+Mon Jan 30 12:07:35 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * PROBLEM-REPORT-FORM:
+
+ Added a section to provide the Perl version.
+
+ * README:
+
+ Updated the valid command line options for workspaces with the
+ -language option.
+
+ * USAGE:
+
+ Documented the -value_template option and provided an example
+ where spaces needed to be retained.
+
+ * modules/XMLProjectBase.pm:
+ * modules/BDSProjectCreator.pm:
+ * modules/CBXProjectCreator.pm:
+ * modules/HTMLProjectCreator.pm:
+ * modules/SLEProjectCreator.pm:
+ * modules/VC7ProjectCreator.pm:
+
+ Created a new project base for XML based project creators. The
+ trend in projects seem to be going toward XML so we can minimize
+ the amount of repeated code by using the XMLProjectBase.
+
+ * modules/BDSWorkspaceCreator.pm:
+ * modules/CBXWorkspaceCreator.pm:
+ * modules/GHSWorkspaceCreator.pm:
+ * modules/SLEWorkspaceCreator.pm:
+
+ Tell the sort_dependencies() method that we do not want sorting
+ by directory groups.
+
+ * modules/BMakeProjectCreator.pm:
+
+ Removed an unnecessary check of convert_slashes().
+
+ * modules/ProjectCreator.pm:
+
+ Provided support for use of <% %> variables within all of MPC
+ project keywords. The list of valid variables only includes the
+ pseudo variables listed under 'postbuild' in the README.
+
+ * templates/bmake.mpd:
+
+ Utilize the 'transdir' template function to fully support files
+ with .. in the path name.
+
+ * templates/vc7.mpd:
+ * templates/vc7dll.mpt:
+ * templates/vc7exe.mpt:
+ * templates/vc7lib.mpt:
+ * templates/vc7libexe.mpt:
+ * templates/vc8.mpd:
+ * templates/vc8dll.mpt:
+ * templates/vc8exe.mpt:
+ * templates/vc8lib.mpt:
+ * templates/vc8libexe.mpt:
+
+ Added two new configurations (not generated by default) called
+ 'Memcheck Debug' and 'Memcheck Release'. These configurations
+ provide settings that are amenable to external memory checking
+ tools.
+
+Wed Jan 25 11:40:37 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/WorkspaceCreator.pm:
+
+ Return an array reference from the get_validated_ordering() method
+ instead of a string. In every place get_validated_ordering() was
+ called, the return value was immediately converted to an array.
+
+ * modules/VC6WorkspaceCreator.pm:
+ * modules/VC71WorkspaceCreator.pm:
+ * modules/VC7WorkspaceCreator.pm:
+
+ Use the returned array instead of converting the string into an
+ array.
+
+Wed Jan 25 09:02:34 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/DirectoryManager.pm:
+ * modules/TemplateParser.pm:
+ * modules/WinProjectBase.pm:
+
+ Added a new template function called transdir which will translate
+ a directory portion of a filename into a "usable" object file
+ directory. It entails changing .. into the word 'dotdot' and for
+ windows based projects it will also change drive letters and $()
+ variables.
+
+ * templates/nmake.mpd:
+
+ Use the new transdir function to deal with relative directories
+ and other problematic directory names.
+
+Mon Jan 23 13:05:12 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/nmake.mpd:
+
+ Added a rule back in that was removed by my change on
+ Mon Jan 9 08:30:14 2006.
+
+Mon Jan 23 12:08:25 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/BMakeWorkspaceCreator.pm:
+ * modules/MakeWorkspaceCreator.pm:
+ * modules/NMakeWorkspaceCreator.pm:
+
+ Tell the number_target_deps() method that we do not want sorting
+ by directory groups.
+
+ * modules/VC6WorkspaceCreator.pm:
+ * modules/VC71WorkspaceCreator.pm:
+ * modules/VC7WorkspaceCreator.pm:
+
+ No need to check for circular dependencies here, it is now done
+ when validating the dependencies.
+
+ * modules/WorkspaceCreator.pm:
+
+ Re-wrote the circular directory dependency detection code in order
+ to detect multi-directory (3 or more) dependencies. This slowed
+ things down a bit, so I had to find performance in other locations
+ throughout the workspace creator.
+
+Thu Jan 19 12:59:55 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * USAGE:
+ * modules/Driver.pm:
+ * modules/Options.pm:
+
+ Added a new option, -gfeature_file, to specify the global feature
+ file.
+
+Thu Jan 19 12:30:18 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/VC71ProjectCreator.pm:
+ * modules/VC7ProjectCreator.pm:
+
+ Moved a static hash table out of a method and into the local
+ namespace (for performace reasons).
+
+ * modules/VC7WorkspaceCreator.pm:
+ * templates/vc7csharp.mpd:
+ * templates/vc7vb.mpd:
+
+ Removed the code that added references for csharp or vb. This was
+ not necessary and in fact broke the projects.
+
+ * modules/VC8ProjectCreator.pm:
+ * templates/vc8csharp.mpd:
+ * templates/vc8csharp.mpt:
+
+ Added support for the vc8 style projects for csharp. Previously,
+ the vc7 version for csharp was used and required conversion within
+ vc8.
+
+Wed Jan 18 15:12:40 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/nmake.mpd:
+
+ Modified the clean rule to just use del /s/f/q instead of listing
+ out each object file. Thanks to Johnny Willemsen for debugging
+ this.
+
+Wed Jan 18 13:04:27 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/NMakeWorkspaceCreator.pm:
+ * modules/TemplateParser.pm:
+ * modules/VC7ProjectCreator.pm:
+ * modules/VC7WorkspaceCreator.pm:
+
+ We need to keep track of the language for each project processed.
+ This allows the VC7, VC71 and VC8 WorkspaceCreator's to put the
+ right GUID in for the individual projects.
+
+Tue Jan 17 07:25:29 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/FeatureParser.pm:
+
+ The previous change included a change to make features
+ case-insensitive. This change was not complete and has been
+ corrected.
+
+Mon Jan 16 11:17:45 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * MPC.ico:
+
+ Modified the MPC project icon to have the (P) on the left side
+ instead of the right so that it looks better with Tortoise.
+
+ * modules/Creator.pm:
+ * modules/WorkspaceCreator.pm:
+
+ Added support for using -language within a workspace. Previously,
+ this was disallowed but there was no real reason for that.
+
+ * modules/FeatureParser.pm:
+ * modules/ProjectCreator.pm:
+ * modules/TemplateParser.pm:
+
+ Added support for accessing MPC features and their values.
+
+ * templates/html.mpd:
+
+ Added all of the MPC project keywords.
+
+ * templates/nmake.mpd:
+
+ Added the -i parameter to the depgen.pl script.
+
+ * templates/vc6dspdll.mpt:
+
+ Added the _WINDLL and _AFXDLL macros for the MFC configurations.
+
+ * templates/vc7.mpd:
+
+ Added the ability to set the GenerateMapFile setting. Thanks to
+ David Hauck for providing the modification.
+
+ * templates/vc7csharp.mpd:
+ * templates/vc7vb.mpd:
+
+ Added the ReferencePath setting so that libraries can be located
+ (if referenced) and ensured that the 'install' setting worked as
+ it does in all other templates. Thanks to Dan Troesser for
+ providing the ReferencePath setting and pointing out the 'install'
+ discrepancy.
+
+Tue Jan 10 16:30:32 2006 Ossama Othman <ossama@dre.vanderbilt.edu>
+
+ From Russell Mora <russell_mora at symantec dot com>
+ * templates/nmake.mpd:
+
+ Add to manifest files, if `.manifest' file exists.
+
+Mon Jan 9 08:30:14 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/nmake.mpd:
+
+ Corrected a bug reported by Johnny Willemsen where object files
+ were not getting cleaned up if they contained a relative path with
+ ".." in the name. In the process, I cleaned up the template a bit
+ which should allow this type to be generated slightly faster.
+
+Thu Jan 5 09:45:54 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/Creator.pm:
+ * modules/DirectoryManager.pm:
+ * modules/ProjectCreator.pm:
+
+ Made MPC more tolerant of file systems that are case insensitive.
+ This will help with the relative path replacement on Windows and
+ others that have this problematic type of file system.
+
+Wed Jan 4 08:09:20 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/ProjectCreator.pm:
+
+ Fixed a bug where adding a grouped set of source files that are
+ generated using a wildcard would cause a duplicate of the default
+ group if files were added to a different after the generated
+ group.
+
+Tue Jan 3 08:26:34 2006 Chad Elliott <elliott_c@ociweb.com>
+
+ * USAGE:
+ * modules/Options.pm:
+
+ Added the possible language settings to the help message.
+
+ * templates/make.mpd:
+ * templates/makedll.mpt:
+
+ Allow control of the 'genflags' setting with the 'optimize'
+ template variable. This changes the default 'genflags' setting
+ from -g to -O.
+
+ * templates/vc7.mpd:
+ * templates/vc7dll.mpt:
+ * templates/vc7exe.mpt:
+ * templates/vc7lib.mpt:
+ * templates/vc7libexe.mpt:
+ * templates/vc8.mpd:
+ * templates/vc8dll.mpt:
+ * templates/vc8exe.mpt:
+ * templates/vc8lib.mpt:
+ * templates/vc8libexe.mpt:
+
+ Introduced a new template variable, 'debug_prj', which helps
+ control which run-time library is used during linking.
+ Previously, this was controled by the 'optimize' template
+ variable, but building a "Release" configuration with 'optimize'
+ turned off did not work where inline functions were used in other
+ libraries (being linked in) where 'optimize' was left on.
+
+Mon Dec 26 21:02:36 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/vc7.mpd:
+ * templates/vc8.mpd:
+
+ Set the run-time library to a static version if either template
+ variables type_is_static or need_staticflags are set.
+
+Thu Dec 22 13:56:14 2005 J.T. Conklin <jtc@acorntoolworks.com>
+
+ * modules/AutomakeProjectCreator.pm:
+
+ Disable code that prefixed include paths with "$(srcdir)/". In
+ some cases an include path should be relative to the source dir,
+ in others it should be relative to the build dir, and sometimes
+ it should be relative to both. Since it is impossible to guess
+ which is the correct choice, require the *.mpc file to specify
+ it correctly.
+
+Thu Dec 22 15:17:30 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/vc7csharp.mpd:
+
+ Added a missing <%endif%>.
+
+Thu Dec 22 08:30:56 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * USAGE:
+
+ Update the usage to contain the 'bds' type.
+
+ * modules/Creator.pm:
+
+ Fixed a feature where $() variables were automatically expanded
+ during a subtraction. Now, we only expand the $() variable if we
+ could not find the subtraction value in the name value.
+
+ * templates/bds.mpd:
+
+ Modified the includes foreach to set the forcount base.
+
+ * templates/bdsdll.mpt:
+ * templates/bdsexe.mpt:
+
+ Include the user_bds* file instead of the user_cbx* file.
+
+Wed Dec 21 19:17:12 UTC 2005 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * templates/vc8platforms.mpt:
+ Set the TargetMachine when building for EM64T
+
+Wed Dec 21 18:55:12 UTC 2005 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * templates/bds.mpd:
+ * templates/bdsdll.mpt:
+ * templates/bdsexe.mpt:
+ * modules/BDSProjectCreator.pm:
+ * modules/BDSWorkspaceCreator.pm:
+ Initial version of Borland Developer Studio template. Work is
+ being done for the C++ personality. All files, compiler flags
+ and libs are generated but some more work has to be done to
+ use these for a full build. Now they are already useful for
+ debugging apps that are build from the command line.
+
+ * modules/MPC.pm:
+ * modules/MWC.pm:
+ Added BDS files
+
+Wed Dec 21 06:28:04 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * MPC.ico:
+ * registry.pl:
+
+ Added the ability to register the .mpc and .mwc file types as well
+ as create context menus within the Windows explorer.
+
+ * PROBLEM-REPORT-FORM:
+
+ Fixed the URL for the MPC FAQ.
+
+ * README:
+ * modules/TemplateParser.pm:
+
+ Added the ability to set the base for the <%forcount%> variable.
+ See the README for details as to how to use this. Also, added
+ code to only check for mixed values (scalars and hash maps) if the
+ foreach value is not the name of an MPC project keyword.
+
+ * config/swig_java.mpb:
+
+ Added support for using SWIG with Java.
+
+ * modules/AutomakeProjectCreator.pm:
+ * modules/Driver.pm:
+ * modules/GHSProjectCreator.pm:
+ * modules/HTMLProjectCreator.pm:
+ * modules/MakeProjectCreator.pm:
+
+ Removed the convert_slashes() method. And use the default from
+ DirectoryManager.pm.
+
+ * modules/Creator.pm:
+
+ Use File::Spec to determine file system capabilities to give the
+ right warning message. Also added the ability to determine if any
+ files were excluded when generating the default file list.
+
+ * modules/DirectoryManager.pm:
+
+ Corrected problems with using Cwd::getcwd() on VMS as it always
+ leaves a trailing slash on the end which no other implementation
+ does. Also, switched the convert_slashes() method to return zero
+ as the default (which will require slightly less code overall in
+ MPC).
+
+ * modules/HTMLWorkspaceCreator.pm:
+ * templates/html.mpd:
+
+ Make the HTML acceptable by WC3 standards.
+
+ * modules/MakeWorkspaceCreator.pm:
+
+ Added a .PHONY: target for each named target. This will only work
+ with GNU Make and won't hurt with other versions of make.
+
+ * modules/ProjectCreator.pm:
+
+ 1) Check for case insensitivity (from a new method) when checking
+ whether we should use upper or lower case in the
+ expand_variables() method.
+ 2) Added an is_keyword() method to allow the TemplateParser to
+ determine if a variable is an MPC project keyword or not.
+ 3) When adding the built-in OS compatibility methods, check the
+ base class to see if it's a WinProjectBase to determine if the
+ project type will be used on Windows or not.
+
+ * modules/WinProjectBase.pm:
+
+ For Windows based project types, define the convert_slashes() and
+ case_insensitive() methods.
+
+ * modules/WorkspaceCreator.pm:
+
+ Fixed a bug where file exclusions given on the command line
+ wouldn't work because somewhere down the line MPC would change
+ directory and nothing would match up. Also, fixed a related bug
+ where if all of the .mpc files normally contained within a
+ workspace were excluded a default workspace would then be used
+ possibly adding unwanted .mpc files.
+
+ * mpc.pl:
+ * mwc.pl:
+
+ Finally corrected support for VMS. FindBin doesn't work on VMS if
+ you use a relative directory, so we just use rel2abs() on the
+ dirname of $0 in this situation.
+
+ * templates/bmake.mpd:
+ * templates/bmakedll.mpt:
+ * templates/bmakedllexe.mpt:
+ * templates/bmakelibexe.mpt:
+
+ Modified these to move the binary compile flags into the template
+ such that correct makefiles would be created if the user set the
+ staticname to a valid name and set sharedname to empty.
+
+ * templates/ghs.mpd:
+ * templates/ghsdll.mpt:
+ * templates/ghsdllexe.mpt:
+ * templates/ghslib.mpt:
+
+ Modified these to move the library extensions into the template
+ such that correct build files would be created if the user set the
+ staticname to a valid name and set sharedname to empty.
+
+ * templates/make.mpd:
+
+ Moved the output file to the last part of the link command line.
+ Made "all" the default target for libraries. Parameterized the
+ pch extension. Added better support for precompiled headers.
+
+ * templates/makedll.mpt:
+
+ Set the default pch extension to .gch. Renamed the cxx
+ configuration to cxx_tru64. Added precompiled header support for
+ SunCC (which was there as of SunCC 5.5). For SunCC 5.4 and below,
+ use -value_template pchsupport= to turn off precompiled header
+ support.
+
+ * templates/vc7.mpd:
+ * templates/vc7dll.mpt:
+ * templates/vc7exe.mpt:
+ * templates/vc7lib.mpt:
+ * templates/vc7libexe.mpt:
+ * templates/vc8.mpd:
+ * templates/vc8dll.mpt:
+ * templates/vc8exe.mpt:
+ * templates/vc8lib.mpt:
+ * templates/vc8libexe.mpt:
+
+ Modified the RuntimeLibrary setting to choose the right value for
+ static/dynamic configurations.
+
+Tue Dec 6 06:36:27 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/WorkspaceCreator.pm:
+
+ Fixed a bug where MPC would go into an infinite loop (while
+ generating an intermediate workspace) if there were duplicate
+ project names within a single workspace. The sort_by_groups()
+ method is being called prior to the method that checks for
+ duplicate projects.
+
+Mon Dec 5 14:17:35 2005 William Otte <wotte@dre.vanderbilt.edu>
+
+ * config/boost_unit_test_framework.mpb
+
+ Automatic linking is not supported for the unit test
+ framework, see http://boost.org/more/getting_started.html#auto-link.
+
+Tue Nov 29 10:11:14 2005 William Otte <wotte@dre.vanderbilt.edu>
+
+ * config/boost_date_time.mpb:
+ * config/boost_filesystem.mpb:
+ * config/boost_prg_exec_monitor.mpb:
+ * config/boost_regex.mpb:
+ * config/boost_signals.mpb:
+ * config/boost_test_exec_monitor.mpb:
+ * config/boost_thread.mpb:
+ * config/boost_unit_test_framework.mpb:
+
+ Corrected a problem with my previous commit that broke boost
+ on platforms other than gnuace and windows. Thanks to Chad
+ Elliott and Kitty B. for pointing out the problem and suggesting
+ a fix.
+
+Mon Nov 21 15:23:40 2005 William Otte <wotte@dre.vanderbilt.edu>
+
+ * config/boost_filesystem.mpb:
+ * config/boost_regex.mpb:
+
+ Scoped the lit_libs directive inside of a gnuace specific
+ block to take advantage of automatic library resolution provided
+ by the Windows version of boost.
+
+Mon Nov 21 09:26:35 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * README:
+ * modules/Creator.pm:
+ * modules/ProjectCreator.pm:
+
+ Added a new clause (expand) that can be used to set the expansion
+ values of a particular variable. This lets users define to what
+ $(VAR_NAME) gets expanded within an mpc file. See the README for
+ more information.
+
+ * mpc.pl:
+ * mwc.pl:
+ * modules/DirectoryManager.pm:
+ * modules/WorkspaceCreator.pm:
+ * templates/make.mpd:
+ * templates/makedll.mpt:
+
+ Added better support for OpenVMS. This mainly entailed dealing
+ with the .dir extension on directories and [] within wildcard
+ specifications (as the OpenVMS glob() function does not handle
+ these).
+
+Wed Nov 16 08:30:51 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/Creator.pm:
+ * modules/ProjectCreator.pm:
+
+ Fixed a bug where adding or subtracting a value with spaces would
+ not work as expected. When adding, the value would be split at
+ each whitespace. When subtracting, the value would never be
+ removed.
+
+ Setting a variable with spaces worked correctly.
+
+Mon Nov 14 12:06:15 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/nmake.mpd:
+
+ Corrected a problem in the realclean target where .dll, .lib and
+ .exp files would not be deleted unless pdbc or pdbl template
+ variables were defined.
+
+Mon Nov 14 09:50:38 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/WorkspaceCreator.pm:
+
+ Fixed a bug where a project name that conflicts with a directory
+ name would not get mapped in cases where the directory had
+ multiple levels.
+
+Mon Nov 14 07:40:19 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/WorkspaceCreator.pm:
+
+ Fixed a bug where sorting the projects (with a circular
+ dependency) would run infinitely. This was identical to the
+ problem fixed on Thu Apr 15 13:16:03 2004 just in a different
+ scenario.
+
+Thu Nov 10 12:23:43 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/TemplateParser.pm:
+
+ When checking for duplicate source files in duplicate_index(),
+ always use lowercase (since this is currently only used on
+ Windows).
+
+Thu Nov 10 09:01:25 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/automake.mpd:
+ * templates/bmake.mpd:
+ * templates/em3.mpd:
+ * templates/ghs.mpd:
+ * templates/html.mpd:
+ * templates/make.mpd:
+ * templates/nmake.mpd:
+ * templates/sle.mpd:
+ * templates/vc6.mpd:
+ * templates/vc7.mpd:
+ * templates/vc7csharp.mpd:
+ * templates/vc7vb.mpd:
+ * templates/vc8.mpd:
+
+ Added a template variable, libname_prefix, that can be set to
+ prefix all library names (sharedname, staticname and libs). Note
+ that lit_libs and pure_libs are not affected.
+
+Mon Nov 7 10:15:31 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/ProjectCreator.pm:
+
+ Fixed a bug where a given custom input file does not match the
+ custom defined input extensions and no source files are
+ given, the generated source file name would still have the input
+ file extension in the name (with an escaped period).
+
+Mon Nov 7 13:59:12 UTC 2005 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * config/boost_prg_exec_monitor.mpb:
+ * config/boost_test_exec_monitor.mpb:
+ * config/boost_unit_test_framework.mpb:
+ Added borland
+
+Fri Oct 28 14:58:59 2005 William Otte <wotte@dre.vanderbilt.edu>
+
+ * config/global.features:
+ * config/xerces.mpb:
+
+ Added a xerces feature to the xerces base project, similar to
+ boost/zlib/zzip to allow disabling xerces specific projects.
+
+Fri Oct 28 11:43:52 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * config/swig_perl.mpb:
+
+ Added $(PERL5_INCLUDE) to the 'libpaths' as well as the 'includes'.
+
+ * templates/vc8.mpd:
+
+ Corrected two instances of subdir_output which only show up if you
+ set the template variable 'pdbc'.
+
+Sun Oct 23 08:14:12 UTC 2005 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * templates/bmake.mpd:
+ Generate also includes for the resource compiler
+
+Wed Oct 19 10:06:50 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * config/boost_date_time.mpb:
+ * config/boost_filesystem.mpb:
+ * config/boost_prg_exec_monitor.mpb:
+ * config/boost_regex.mpb:
+ * config/boost_signals.mpb:
+ * config/boost_test_exec_monitor.mpb:
+ * config/boost_thread.mpb:
+ * config/boost_unit_test_framework.mpb:
+
+ Added a $(BOOST_STATIC_LIB_PREFIX) to the library name for all
+ boost libraries. For some reason, they insist on prepend 'lib' to
+ the name of all static libraries on Windows. For
+ unit_test_framework, prg_exec_monitor and test_exec_monitor, 'lib'
+ is always prepended on Windows since these are currently always
+ static. Thanks to Kevin Heifner for pointing this out.
+
+Thu Oct 13 17:24:21 2005 Steve Huston <shuston@riverace.com>
+
+ * modules/VC8WorkspaceCreator.pm: Add the 3 magic bytes to the start
+ of the .sln file that allow double-clicking on the .sln file's icon
+ to auto-start Visual Studio.
+
+Mon Oct 10 07:02:30 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/TemplateParser.pm:
+
+ Fixed a bug where mixed case template variables within a foreach
+ context were not being evaluated case insensitively. This made it
+ appear that these variables were not being set.
+
+ * templates/vc8.mpd:
+
+ Moved an endif to the correct location pertaining to precompiled
+ headers. Too much was being included within an if which depended
+ upon the pch_header setting.
+
+ Thanks to Thomas Rothfuss for reporting both of these bugs.
+
+Fri Oct 7 13:50:49 2005 J.T. Conklin <jtc@acorntoolworks.com>
+
+ * modules/AutomakeWorkspaceCreator.pm:
+
+ Change the way RCS/CVS Id is emitted so it's the same as how it
+ is expanded in souces checked out with -kk option. This allows
+ us to regenerate ACE and TAO's Makefile.am files and only see
+ the "real" differences.
+
+Fri Oct 7 09:33:41 2005 J.T. Conklin <jtc@acorntoolworks.com>
+
+ * templates/automake.mpd:
+
+ Add support for custom file dependents.
+
+Thu Oct 6 17:52:41 2005 Steve Huston <shuston@riverace.com>
+
+ * templates/vc8.mpd:
+ * templates/vc8dll.mpt:
+ * templates/vc8exe.mpt:
+ * templates/vc8lib.mpt:
+ * templates/vc8libexe.mpt:
+ * templates/vc8platforms.mpt (new file):
+ Added support for building Windows CE/Mobile from Visual Studio 2005.
+ By default, only the regular desktop Win32 configurations will be
+ generated, as before. The CE/mobile platform names can be specified
+ using -value_templates platforms="....". The possible platform
+ names are listed in vc8platforms.mpt.
+
+ To avoid overwriting outputs when building multiple platforms in
+ the same ACE_wrappers directory, a platform can supply an
+ output_subdir setting (see vc8platforms.mpt). If specified, vc8.mpd
+ will use this in the Intermediate/OutputDirectory entries.
+
+Tue Oct 4 06:35:13 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/vc7.mpd:
+ * templates/vc8.mpd:
+
+ Improved MIDL support by adding generated files to the generated
+ project to ensure that these generated files get cleaned up.
+
+Fri Sep 30 07:46:54 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * modules/BMakeWorkspaceCreator.pm:
+ * modules/NMakeWorkspaceCreator.pm:
+
+ Corrected the directory changing code to take 2 or more deep
+ relative paths into account. Thanks to Johnny Willemsen
+ <jwillemsen@remedy.nl> for reporting this.
+
+ * templates/automake.mpd:
+
+ Optimized this template with respect to checking a variable before
+ using foreach. The foreach already does this, so checking the
+ variable before hand is a waste of time.
+
+Mon Sep 26 07:10:17 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * README:
+ * modules/ProjectCreator.pm:
+
+ Added generic_pre_extension and generic_pre_filename custom build
+ settings.
+
+ * templates/vc7.mpd:
+ * templates/vc8.mpd:
+
+ Added support for the builtin Visual Studio MIDL.
+
+ * templates/vccommon.mpt:
+
+ Added a comment that this file is not common to Visual C++, just
+ vc6.
+
+Thu Sep 22 12:43:43 2005 J.T. Conklin <jtc@acorntoolworks.com>
+
+ * templates/automake.mpd:
+
+ Changed to output libs, lit_libs, and pure_libs on separate
+ lines.
+
+Tue Sep 20 08:47:21 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * config/swig_perl.mpb:
+
+ Added an include for $(PERL5_INCLUDE).
+
+ * modules/TemplateInputReader.pm:
+
+ Allow "()." in scope names within .mpt files.
+
+ * modules/WorkspaceCreator.pm:
+
+ Provide the user with more information as to why workspace
+ creation failed.
+
+ * templates/makedll.mpt:
+
+ Shared libraries are created on Solaris using the -G option (not
+ -shared).
+
+Mon Sep 12 10:47:28 2005 Justin Michel <michel_j@ociweb.com>
+
+ * clone_build_tree.pl:
+
+ Prevent cloning of .pch files, which are precompiled headers when
+ using VC++.
+
+Thu Sep 8 08:06:18 2005 J.T. Conklin <jtc@acorntoolworks.com>
+
+ * templates/automake.mpd:
+
+ Changed to output compile_flags on separate lines.
+
+ Changed to sort lists of source, header, and inline files
+ to make output more deterministic.
+
+Tue Sep 6 10:34:24 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * config/swig_perl.mpb:
+
+ Added a base project for using SWIG with perl.
+
+ * templates/automake.mpd:
+ * templates/bmake.mpd:
+ * templates/em3.mpd:
+ * templates/ghs.mpd:
+ * templates/make.mpd:
+ * templates/nmake.mpd:
+ * templates/vc6.mpd:
+ * templates/vc7.mpd:
+ * templates/vc7csharp.mpd:
+ * templates/vc7vb.mpd:
+ * templates/vc8.mpd:
+
+ Change the position of the use of custom 'output_option' setting.
+ Ensure that the input file is the last thing on the command line.
+
+Mon Aug 29 08:52:15 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/vc7.mpd:
+
+ Enabled incremental linking as the default.
+
+ * templates/vc7dll.mpt:
+ * templates/vc7exe.mpt:
+
+ Disable incremental linking in release mode as was done in
+ Justin's change on Fri Aug 26 13:46:47 2005.
+
+Mon Aug 29 12:41:12 UTC 2005 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * templates/nmakedll.mpt:
+ * templates/nmakeexe.mpt:
+ Added WinX86_64 as platform. This is Windows 64bit on EMT64.
+
+Mon Aug 29 11:48:12 UTC 2005 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * templates/nmake.mpd:
+ Made it possible to overrule cc, link and rc when generating the
+ nmake project files
+
+Fri Aug 26 14:32:48 2005 Justin Michel <michel_j@ociweb.com>
+
+ * clone_build_tree.pl:
+
+ Updated to prevent cloning of .suo files, which are used to store
+ solution settings for VC++ 7+.
+
+Fri Aug 26 13:46:47 2005 Justin Michel <michel_j@ociweb.com>
+
+ * templates/vc7libexe.mpt:
+ * templates/vc8libexe.mpt:
+
+ It is invalid to enable incremental linking on release builds,
+ because we also enabled comdat folding and reference optimization.
+
+Mon Aug 22 11:57:03 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * templates/vc8.mpd:
+
+ Fixed a bug in the template that caused static projects to have
+ incorrect project settings.
+
+Mon Aug 22 07:17:17 2005 Chad Elliott <elliott_c@ociweb.com>
+
+ * MPC version 3.3.0 released.
+
+Local Variables:
+add-log-time-format: current-time-string
+indent-tabs-mode: nil
+End: