diff options
Diffstat (limited to 'ACE/MPC/history/ChangeLog-3_3')
-rw-r--r-- | ACE/MPC/history/ChangeLog-3_3 | 1985 |
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: |