Merged in Governor-Tarkin/swg-src (pull request #17)
[swg-src.git] / tools / BuildVcproj.pl
blob2b6aca205ba4dd4b72bf8661c59c024fd3240214
1 #!/usr/bin/perl
2 # =====================================================================
4 # figure out what project file we're building
5 $project = $ARGV[0];
6 die "no project name specified" if (!defined($project));
8 # lop off the directories
9 $project =~ s#^.*[/\\]##;
11 # lop off the extension
12 $project =~ s#\.vcproj$##;
14 # capitalize the first letter of the string
15 $Project = $project;
16 substr($Project,0,1) =~ tr/a-z/A-Z/;
18 # get the directory path, paths need to be relative to the project files
19 $directory = $ARGV[0];
20 if ($directory =~ s#[/\\][^/\\]+$## != 0)
22 chdir($directory) || die "could not change into directory ". $directory;
25 # =====================================================================
27 # setup defaults
28 @defines_debug = ("WIN32", "_DEBUG", "_MBCS", "DEBUG_LEVEL=2", "_CRT_SECURE_NO_DEPRECATE=1", "_USE_32BIT_TIME_T=1");
29 @defines_optimized = ("WIN32", "_DEBUG", "_MBCS", "DEBUG_LEVEL=1", "_CRT_SECURE_NO_DEPRECATE=1", "_USE_32BIT_TIME_T=1");
30 @defines_release = ("WIN32", "NDEBUG", "_MBCS", "DEBUG_LEVEL=0", "_CRT_SECURE_NO_DEPRECATE=1", "_USE_32BIT_TIME_T=1");
32 $opt_optimizationLevel = "3";
33 $opt_intrinsicFunctions = "TRUE";
34 $opt_sizeOrSpeed = "1";
36 $fixMfc = 0;
37 $fixQt = 0;
39 $dbgInfo_d = makeDebugInfoFlag("pdb");
40 $dbgInfo_o = makeDebugInfoFlag("pdb");
41 $dbgInfo_r = makeDebugInfoFlag("pdb");
42 $incremental_d = makeIncrementalLinkFlag("yes");
43 $incremental_o = makeIncrementalLinkFlag("yes");
44 $incremental_r = makeIncrementalLinkFlag("no");
45 $minimalRebuild = "TRUE";
46 $debugInline = "0";
48 # =====================================================================
49 # process RSP files
51 open(RSP, "settings.rsp") || die "could not open settings.rsp for " . $project . ", ";
52 while (<RSP>)
54 # handle comments
55 s/#.*//;
57 foreach (split)
59 if ($_ eq "windows")
61 $output = $template_windows;
62 push(@defines_debug, "_WINDOWS");
63 push(@defines_optimized, "_WINDOWS");
64 push(@defines_release, "_WINDOWS");
66 elsif ($_ eq "mfc")
68 $output = $template_mfc;
69 push(@defines_debug, "_WINDOWS");
70 push(@defines_optimized, "_WINDOWS");
71 push(@defines_release, "_WINDOWS");
73 # Don't fix mfc paths. We want to compile using mfc, not atlmfc
74 # $fixMfc = 1;
76 elsif ($_ eq "qt334" || $_ eq "qt")
78 $output = $template_qt;
79 push(@defines_debug, "_WINDOWS", "QT_DLL", "QT_NO_STL", "QT_ACCESSIBILITY_SUPPORT");
80 push(@defines_optimized, "_WINDOWS", "QT_DLL", "QT_NO_STL", "QT_ACCESSIBILITY_SUPPORT");
81 push(@defines_release, "_WINDOWS", "QT_DLL", "QT_NO_STL", "QT_ACCESSIBILITY_SUPPORT");
82 $qt_version = "3.3.4";
83 $fixQt = 1;
85 elsif ($_ eq "console")
87 $output = $template_console;
88 push(@defines_debug, "_CONSOLE");
89 push(@defines_optimized, "_CONSOLE");
90 push(@defines_release, "_CONSOLE");
92 elsif ($_ eq "library")
94 $output = $template_library;
96 push(@defines_debug, "_LIB");
97 push(@defines_optimized, "_LIB");
98 push(@defines_release, "_LIB");
100 elsif ($_ eq "utility")
102 $output = $template_utility;
104 elsif ($_ eq "noPchDirectory")
106 $noPchDir = 1;
108 elsif ($_ eq "stdafx")
110 $stdafx = 1;
112 elsif ($_ eq "noPch")
114 $noPch = 1;
116 elsif ($_ eq "p4")
118 push(@defines_debug, "CASE_INSENSITIVE", "OS_NT");
119 push(@defines_optimized, "CASE_INSENSITIVE", "OS_NT");
120 push(@defines_release, "CASE_INSENSITIVE", "OS_NT");
122 elsif ($_ eq "unicode")
124 push(@defines_debug, "_UNICODE", "UNICODE");
125 push(@defines_optimized, "_UNICODE", "UNICODE");
126 push(@defines_release, "_UNICODE", "UNICODE");
128 elsif (s/^Zm//)
130 $zm = " /Zm" . $_ . " ";
132 elsif (/^dbgInfo_/)
134 print "ignoring $_ directive\n";
136 #elsif (s/^dbgInfo_d_//)
138 # $dbgInfo_d = makeDebugInfoFlag($_);
140 #elsif (s/^dbgInfo_o_//)
142 # $dbgInfo_o = makeDebugInfoFlag($_);
144 #elsif (s/^dbgInfo_r_//)
146 # $dbgInfo_r = makeDebugInfoFlag($_);
148 elsif (/^incremental_/)
150 print "ignoring $_ directive\n";
152 #elsif (s/^incremental_d_//)
154 # $incremental_d = makeIncrementalLinkFlag($_);
156 #elsif (s/^incremental_o_//)
158 # $incremental_o = makeIncrementalLinkFlag($_);
160 #elsif (s/^incremental_r_//)
162 # $incremental_r = makeIncrementalLinkFlag($_);
164 elsif (/Gm-/)
166 $minimalRebuild = "FALSE";
168 elsif ($_ eq "copyDev")
170 $copyDev = 1;
172 elsif ($_ eq "debugInline")
174 $debugInline = "1";
176 elsif ($_ eq "disableOptimizationsInOpt")
178 $opt_optimizationLevel = "0";
179 $opt_intrinsicFunctions = "FALSE";
180 $opt_sizeOrSpeed = "0";
182 elsif ($_ eq "versionNumber")
184 $versionNumber = 1;
186 elsif ($_ eq "versionResource")
188 $versionResource = 1;
190 else
192 die "unknown option ", $_, "\n";
196 close(RSP);
198 # read in the includes list
199 push(@defines_debug, process_rsp("defines_d.rsp", "defines.rsp"));
200 push(@defines_optimized, process_rsp("defines_o.rsp", "defines.rsp"));
201 push(@defines_release, process_rsp("defines_r.rsp", "defines.rsp"));
203 # read in the includes list
204 @includeDirectories_debug = process_rsp("includePaths_d.rsp", "includePaths.rsp");
205 @includeDirectories_optimized = process_rsp("includePaths_o.rsp", "includePaths.rsp");
206 @includeDirectories_release = process_rsp("includePaths_r.rsp", "includePaths.rsp");
208 # get in the libraries
209 @libraries_debug = process_rsp("libraries_d.rsp", "libraries.rsp");
210 @libraries_optimized = process_rsp("libraries_o.rsp", "libraries.rsp");
211 @libraries_release = process_rsp("libraries_r.rsp", "libraries.rsp");
213 # get the libraries to ignore
214 @ignoreLibraries_debug = process_rsp("ignoreLibraries_d.rsp", "ignoreLibraries.rsp");
215 @ignoreLibraries_optimized = process_rsp("ignoreLibraries_o.rsp", "ignoreLibraries.rsp");
216 @ignoreLibraries_release = process_rsp("ignoreLibraries_r.rsp", "ignoreLibraries.rsp");
218 # get the libraries search directory paths
219 @libraryDirectories_debug = process_rsp("libraryPaths_d.rsp", "libraryPaths.rsp");
220 @libraryDirectories_optimized = process_rsp("libraryPaths_o.rsp", "libraryPaths.rsp");
221 @libraryDirectories_release = process_rsp("libraryPaths_r.rsp", "libraryPaths.rsp");
223 if ($fixMfc)
225 fixup_mfc_path(@includeDirectories_debug);
226 fixup_mfc_path(@includeDirectories_optimized);
227 fixup_mfc_path(@includeDirectories_release);
228 fixup_mfc_path(@libraryDirectories_debug);
229 fixup_mfc_path(@libraryDirectories_optimized);
230 fixup_mfc_path(@libraryDirectories_release);
234 if ($fixQt)
236 fixup_qt_path(@includeDirectories_debug);
237 fixup_qt_path(@includeDirectories_optimized);
238 fixup_qt_path(@includeDirectories_release);
239 fixup_qt_path(@libraryDirectories_debug);
240 fixup_qt_path(@libraryDirectories_optimized);
241 fixup_qt_path(@libraryDirectories_release);
243 fixup_qt_lib(@libraries_debug);
244 fixup_qt_lib(@libraries_optimized);
245 fixup_qt_lib(@libraries_release);
249 # =====================================================================
250 # scan the current vcproj looking for per-file settings to preserve
252 if (open(VCPROJ, $project . ".vcproj"))
254 while (<VCPROJ>)
256 # remember the guid
257 if (/ProjectGUID/)
259 chomp;
260 s/^.*{//;
261 s/}.*$//;
263 $guid = $_;
266 # eat a > line
267 if ($state == 2)
269 if (/^\t+>$/)
271 s/^.*$//;
272 chomp;
274 $state = 3;
276 # look for per-file settings to preserve
277 if ($state == 3)
279 if (/\/File>/)
281 $state = 0;
283 else
285 $settings{$filename} .= $_;
288 if ($state == 1 && /^\t+RelativePath=/)
290 chomp;
291 s/^[^"]+"//;
292 s/"[^"]*$//;
293 $filename = $_;
294 $state = 2;
296 if (/^\t\t\t<File[^A-Za-z]/)
298 $state = 1;
301 close(VCPROJ);
304 if ($guid eq "")
306 open(P4, "p4 where //depot/swg/s8/tools/newguid|");
307 $_ = <P4>;
308 close(P4);
309 ($where_depot, $where_client, $where_local) = split;
311 # couldn't find it, so make a new guids
312 open(GUID, $where_local . "|");
313 $guid = <GUID>;
314 chomp $guid;
315 close(GUID);
317 $guid = uc $guid;
319 # override the custom build steps for headers that need moc'ed
320 open(RSP, "mocHeaders.rsp");
321 while (<RSP>)
323 chomp;
325 # handle comments
326 s/#.*//;
328 # clean up the input
329 s/^\s+//;
330 s/\s+$//;
331 s#/#\\#g;
333 if ($_ ne "")
335 # get just the file name
336 $name = $_;
337 $name =~ s#^.*\\##;
338 $name =~ s#\..*$##;
340 $settings{$_} = $mocHeader;
341 $settings{$_} =~ s/%%inputPath%%/$_/g;
342 $settings{$_} =~ s/%%inputName%%/$name/g;
345 close(RSP);
347 # =====================================================================
350 sub makeIncrementalLinkFlag
352 my $input = $_[0];
353 local $flag = "";
354 local $_;
356 if ( $input eq "yes" )
358 $flag = "2";
360 elsif ( $input eq "no" )
362 $flag = "1";
364 else
366 die "Unknown setting for incremental_link: $input\n";
369 return $flag;
372 # =====================================================================
375 sub makeDebugInfoFlag
377 my $input = $_[0];
378 local $flag = "";
379 local $_;
381 if ( $input eq "line_numbers_only" )
383 $flag = "2";
385 elsif ( $input eq "pdb" )
387 $flag = "3";
389 elsif ( $input eq "edit_and_continue" )
391 $flag = "4";
393 elsif ( $input eq "none" )
395 $flag = "0";
397 else
399 die "Unknown setting for dbgInfo: $input\n";
402 return $flag;
406 sub fixup_mfc_path
408 foreach (@_)
410 s/library\\mfc/library\\atlmfc/;
414 sub fixup_qt_path
416 foreach (@_)
418 s/qt\\[0-9]\.[0-9]\.[0-9]/qt\\$qt_version/;
422 sub fixup_qt_lib
424 my $qtlibver = $qt_version;
425 $qtlibver =~ s/\.//g;
427 foreach (@_)
429 s/qt-mt[0-9][0-9][0-9]/qt-mt$qtlibver/;
434 # =====================================================================
435 # find all the non-linux source files
437 sub addfile
439 my $pathed = $_[0];
440 local $_ = $pathed;
442 # lop off the directories
443 s#.*/##;
444 s#.*\\##;
446 if (/\.cpp$/)
448 $sourceNames{$_} = $pathed;
450 elsif (/\.h$/)
452 $headerNames{$_} = $pathed;
454 elsif (/\.def$/)
456 $headerNames{$_} = $pathed;
457 $settings{$pathed} = $excludeFromBuild;
459 elsif (/\.ui$/)
461 $uiNames{$_} = $pathed;
463 $settings{$pathed} = $ui;
464 $settings{$pathed} =~ s/%%inputPath%%/$pathed/g;
465 $noExt = $_;
466 $noExt =~ s/\.ui$//;
467 $settings{$pathed} =~ s/%%inputName%%/$noExt/g;
469 elsif (/\.template$/)
471 $templateNames{$_} = $pathed;
473 elsif (/\.rc$/)
475 $resourceNames{$_} = $pathed;
476 $settings{$pathed} = $resourceDebugLevels if ($versionResource);
478 elsif (/\.ico$/ || /\.cur$/ || /\.bmp$/)
480 $resourceNames{$_} = $pathed;
484 sub dodir
486 local $_;
487 my $dir = $_[0];
489 opendir(DIR, $dir) || return;
490 my @filenames = readdir(DIR);
491 closedir(DIR);
493 for (@filenames)
495 next if $_ eq ".";
496 next if $_ eq "..";
498 $pathed = $dir . "\\" . $_;
500 if (-d $pathed)
502 next if ($_ eq "linux");
503 next if ($_ eq "solaris");
504 &dodir($pathed);
506 else
508 &addfile($pathed);
512 &dodir("..\\..\\src");
513 &dodir("..\\..\\src_oci");
514 &dodir("..\\..\\src_odbc");
515 &dodir("..\\..\\ui");
517 # get any additional files to include in the build
518 open(RSP, "additionalFiles.rsp");
519 while (<RSP>)
521 # handle comments
522 s/#.*//;
524 chomp;
525 s/\s+$//;
526 &addfile($_) if ($_ ne "");
528 close(RSP);
530 # =====================================================================
531 # process all the source files
533 # Make sure all First*.cpp projects build the PCH
534 $settings{$sourceNames{"First$Project.cpp"}} = $createPrecompiledHeader;
536 foreach (sort keys %sourceNames)
538 $_ = $sourceNames{$_};
539 $sources .= "\t\t\t<File\n\t\t\t\tRelativePath=\"" .$_ . "\"\n\t\t\t\t>\n" . $settings{$_} . "\t\t\t</File>\n";
542 foreach (sort keys %headerNames)
544 $_ = $headerNames{$_};
545 $headers .= "\t\t\t<File\n\t\t\t\tRelativePath=\"" . $_ . "\"\n\t\t\t\t>\n" . $settings{$_} . "\t\t\t</File>\n";
548 foreach (sort keys %resourceNames)
550 $_ = $resourceNames{$_};
551 $resources .= "\t\t\t<File\n\t\t\t\tRelativePath=\"" . $_ . "\"\n\t\t\t\t>\n\t\t\t</File>\n";
554 foreach (sort keys %uiNames)
556 # add the ui with the custom build step
557 $uis .= "\t\t\t<File\n\t\t\t\tRelativePath=\"" . $uiNames{$_} .
560 <FileConfiguration
561 Name="Debug|Win32"
563 <Tool
564 Name="VCCustomBuildTool"
565 Description="ui $(InputName)"
566 CommandLine="..\..\..\..\..\..\external\3rd\library\qt\%%qt_version%%\bin\uic -o $(TargetDir)$(InputName).h $(InputPath)&#x0D;&#x0A;..\..\..\..\..\..\external\3rd\library\qt\%%qt_version%%\bin\uic -o $(TargetDir)$(InputName)_d.cpp -impl $(TargetDir)$(InputName).h $(InputPath)&#x0D;&#x0A;..\..\..\..\..\..\external\3rd\library\qt\%%qt_version%%\bin\moc $(TargetDir)$(InputName).h &gt;&gt; $(TargetDir)$(InputName)_d.cpp"
567 Outputs="$(TargetDir)$(InputName).h;$(TargetDir)$(InputName)_d.cpp"
569 </FileConfiguration>
570 <FileConfiguration
571 Name="Optimized|Win32"
573 <Tool
574 Name="VCCustomBuildTool"
575 Description="ui $(InputName)"
576 CommandLine="..\..\..\..\..\..\external\3rd\library\qt\%%qt_version%%\bin\uic -o $(TargetDir)$(InputName).h $(InputPath)&#x0D;&#x0A;..\..\..\..\..\..\external\3rd\library\qt\%%qt_version%%\bin\uic -o $(TargetDir)$(InputName)_o.cpp -impl $(TargetDir)$(InputName).h $(InputPath)&#x0D;&#x0A;..\..\..\..\..\..\external\3rd\library\qt\%%qt_version%%\bin\moc $(TargetDir)$(InputName).h &gt;&gt; $(TargetDir)$(InputName)_o.cpp"
577 Outputs="$(TargetDir)$(InputName).h;$(TargetDir)$(InputName)_o.cpp"
579 </FileConfiguration>
580 <FileConfiguration
581 Name="Release|Win32"
583 <Tool
584 Name="VCCustomBuildTool"
585 Description="ui $(InputName)"
586 CommandLine="..\..\..\..\..\..\external\3rd\library\qt\%%qt_version%%\bin\uic -o $(TargetDir)$(InputName).h $(InputPath)&#x0D;&#x0A;..\..\..\..\..\..\external\3rd\library\qt\%%qt_version%%\bin\uic -o $(TargetDir)$(InputName)_r.cpp -impl $(TargetDir)$(InputName).h $(InputPath)&#x0D;&#x0A;..\..\..\..\..\..\external\3rd\library\qt\%%qt_version%%\bin\moc $(TargetDir)$(InputName).h &gt;&gt; $(TargetDir)$(InputName)_r.cpp"
587 Outputs="$(TargetDir)$(InputName).h;$(TargetDir)$(InputName)_r.cpp"
589 </FileConfiguration>
590 </File>
593 $cpp_debug = $_;
594 $cpp_debug =~ s/\.ui/_d.cpp/;
595 $cpp_optimized = $_;
596 $cpp_optimized =~ s/\.ui/_o.cpp/;
597 $cpp_release = $_;
598 $cpp_release =~ s/\.ui/_r.cpp/;
599 $h = $_;
600 $h =~ s/\.ui/.h/;
602 # add the ui-generated files separately for debug, optimized, and release builds
603 $uiGeneratedSources_debug .= q@
604 <File
605 RelativePath="..\\..\\..\\..\\..\\..\\compile\\win32\\%%Project%%\\Debug\\@ . $cpp_debug . q@"
607 <FileConfiguration
608 Name="Debug|Win32"
610 <Tool
611 Name="VCCLCompilerTool"
612 UsePrecompiledHeader="0"
613 WarningLevel="3"
615 </FileConfiguration>
616 <FileConfiguration
617 Name="Optimized|Win32"
618 ExcludedFromBuild="TRUE"
620 <Tool
621 Name="VCCLCompilerTool"
623 </FileConfiguration>
624 <FileConfiguration
625 Name="Release|Win32"
626 ExcludedFromBuild="TRUE"
628 <Tool
629 Name="VCCLCompilerTool"
631 </FileConfiguration>
632 </File>
635 $uiGeneratedSources_optimized .= q@
636 <File
637 RelativePath="..\\..\\..\\..\\..\\..\\compile\\win32\\%%Project%%\\Optimized\\@ . $cpp_optimized . q@"
639 <FileConfiguration
640 Name="Debug|Win32"
641 ExcludedFromBuild="TRUE"
643 <Tool
644 Name="VCCLCompilerTool"
646 </FileConfiguration>
647 <FileConfiguration
648 Name="Optimized|Win32"
650 <Tool
651 Name="VCCLCompilerTool"
652 UsePrecompiledHeader="0"
653 WarningLevel="3"
655 </FileConfiguration>
656 <FileConfiguration
657 Name="Release|Win32"
658 ExcludedFromBuild="TRUE"
660 <Tool
661 Name="VCCLCompilerTool"
663 </FileConfiguration>
664 </File>
667 $uiGeneratedSources_release .= q@
668 <File
669 RelativePath="..\\..\\..\\..\\..\\..\\compile\\win32\\%%Project%%\\Release\\@ . $cpp_release . q@"
671 <FileConfiguration
672 Name="Debug|Win32"
673 ExcludedFromBuild="TRUE"
675 <Tool
676 Name="VCCLCompilerTool"
678 </FileConfiguration>
679 <FileConfiguration
680 Name="Optimized|Win32"
681 ExcludedFromBuild="TRUE"
683 <Tool
684 Name="VCCLCompilerTool"
686 </FileConfiguration>
687 <FileConfiguration
688 Name="Release|Win32"
690 <Tool
691 Name="VCCLCompilerTool"
692 UsePrecompiledHeader="0"
693 WarningLevel="3"
695 </FileConfiguration>
696 </File>
699 $uiGeneratedHeaders_debug .= q@
700 <File
701 RelativePath="..\\..\\..\\..\\..\\..\\compile\\win32\\%%Project%%\\Debug\\@ . $h . q@"
703 </File>
706 $uiGeneratedHeaders_optimized .= q@
707 <File
708 RelativePath="..\\..\\..\\..\\..\\..\\compile\\win32\\%%Project%%\\Optimized\\@ . $h . q@"
710 </File>
713 $uiGeneratedHeaders_release .= q@
714 <File
715 RelativePath="..\\..\\..\\..\\..\\..\\compile\\win32\\%%Project%%\\Release\\@ . $h . q@"
717 </File>
722 foreach (sort keys %templateNames)
724 $_ = $templateNames{$_};
725 $templates .= "\t\t\t<File\n\t\t\t\tRelativePath=\"" .$_ . "\"\n\t\t\t\t>\n" . $settings{$_} . "\t\t\t</File>\n";
728 # =====================================================================
729 # set up the replacements
731 # setup the replacement strings
732 $replace{"%%guid%%"} = $guid;
733 $replace{"%%project%%"} = $project;
734 $replace{"%%Project%%"} = $Project;
735 $replace{"%%sources%%"} = $sources;
736 $replace{"%%headers%%"} = $headers;
737 $replace{"%%resource%%"} = $template_resource;
738 $replace{"%%resources%%"} = $resources;
739 $replace{"%%template%%"} = $template_template;
740 $replace{"%%templates%%"} = $templates;
742 $replace{"%%debugInline%%"} = $debugInline;
743 $replace{"%%dbgInfo_r%%"} = $dbgInfo_r;
744 $replace{"%%dbgInfo_o%%"} = $dbgInfo_o;
745 $replace{"%%dbgInfo_d%%"} = $dbgInfo_d;
746 $replace{"%%incremental_r%%"} = $incremental_r;
747 $replace{"%%incremental_o%%"} = $incremental_o;
748 $replace{"%%incremental_d%%"} = $incremental_d;
749 $replace{"%%minimalRebuild%%"} = $minimalRebuild;
750 $replace{"%%opt_optimizationLevel%%"} = $opt_optimizationLevel;
751 $replace{"%%opt_intrinsicFunctions%%"} = $opt_intrinsicFunctions;
752 $replace{"%%opt_sizeOrSpeed%%"} = $opt_sizeOrSpeed;
754 $replace{"%%includeDirectories_debug%%"} = explode(",", @includeDirectories_debug);
755 $replace{"%%includeDirectories_optimized%%"} = explode(",", @includeDirectories_optimized);
756 $replace{"%%includeDirectories_release%%"} = explode(",", @includeDirectories_release);
757 $replace{"%%defines_debug%%"} = explode(";", @defines_debug);
758 $replace{"%%defines_optimized%%"} = explode(";", @defines_optimized);
759 $replace{"%%defines_release%%"} = explode(";", @defines_release);
760 $replace{"%%libraries_debug%%"} = explode(" ", @libraries_debug);
761 $replace{"%%libraries_optimized%%"} = explode(" ", @libraries_optimized);
762 $replace{"%%libraries_release%%"} = explode(" ", @libraries_release);
763 $replace{"%%libraryDirectories_debug%%"} = explode(",", @libraryDirectories_debug);
764 $replace{"%%libraryDirectories_optimized%%"} = explode(",", @libraryDirectories_optimized);
765 $replace{"%%libraryDirectories_release%%"} = explode(",", @libraryDirectories_release);
766 $replace{"%%ignoreLibraries_debug%%"} = explode(",", @ignoreLibraries_debug);
767 $replace{"%%ignoreLibraries_optimized%%"} = explode(",", @ignoreLibraries_optimized);
768 $replace{"%%ignoreLibraries_release%%"} = explode(",", @ignoreLibraries_release);
770 $replace{"%%uis%%"} = $uis;
771 $replace{"%%uiGeneratedSources_debug%%"} = $uiGeneratedSources_debug;
772 $replace{"%%uiGeneratedHeaders_debug%%"} = $uiGeneratedHeaders_debug;
773 $replace{"%%uiGeneratedSources_optimized%%"} = $uiGeneratedSources_optimized;
774 $replace{"%%uiGeneratedHeaders_optimized%%"} = $uiGeneratedHeaders_optimized;
775 $replace{"%%uiGeneratedSources_release%%"} = $uiGeneratedSources_release;
776 $replace{"%%uiGeneratedHeaders_release%%"} = $uiGeneratedHeaders_release;
778 $replace{"%%qt_version%%"} = $qt_version;
780 $replace{"%%usepch%%"} = "3";
782 if ($stdafx)
784 $replace{"%%pch%%"} = "StdAfx.h";
786 else
788 if ($noPch)
790 $replace{"%%usepch%%"} = "0";
791 $replace{"%%pch%%"} = "";
793 elsif ($noPchDir)
795 $replace{"%%pch%%"} = "First" . $Project . ".h";
797 else
799 $replace{"%%pch%%"} = $project . "\\First" . $Project . ".h";
803 # =====================================================================
805 # do all the replacements repeatedly until no more replacements can be made
808 $changed = 0;
809 foreach $key (keys %replace)
811 $changed += $output =~ s/$key/$replace{$key}/;
813 } while ($changed > 0);
815 # remove all blank lines
816 $output =~ s/^\n+//;
817 $output =~ s/\n\n+/\n/g;
819 # convert newlines to cr/lf sequences
820 $output =~ s/\n/\cM\cJ/g;
822 # save the output
823 open(DSP, ">" . $project . ".vcproj") || die "could not open project file " . $project . ".vcproj for writing\n";
824 binmode(DSP);
825 print DSP $output;
826 close(DSP);
828 # =====================================================================
830 BEGIN
833 sub process_rsp
835 local $_;
836 my @rsp;
837 while (@_)
839 open(RSP, shift @_);
840 while (<RSP>)
842 chomp;
844 # handle comments
845 s/#.*//;
847 s/\s+$//;
848 tr/\//\\/;
849 push(@rsp, $_) if ($_ ne "");
851 close(RSP);
853 return @rsp;
856 sub explode
858 local $_;
859 my $separator = shift @_;
860 my $result = shift @_;
862 foreach (@_)
864 $result .= $separator . $_;
867 return $result;
870 # ---------------------------------------------------------------------
872 $template_windows = q@
873 <?xml version="1.0" encoding="Windows-1252"?>
874 <VisualStudioProject
875 ProjectType="Visual C++"
876 Version="8.00"
877 Name="%%project%%"
878 ProjectGUID="{%%guid%%}"
879 Keyword="Win32Proj"
881 <Platforms>
882 <Platform
883 Name="Win32"
885 </Platforms>
886 <ToolFiles>
887 </ToolFiles>
888 <Configurations>
889 <Configuration
890 Name="Debug|Win32"
891 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
892 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
893 ConfigurationType="1"
894 UseOfMFC="0"
895 ATLMinimizesCRunTimeLibraryUsage="FALSE"
896 CharacterSet="2"
898 <Tool
899 Name="VCCLCompilerTool"
900 Optimization="0"
901 InlineFunctionExpansion="%%debugInline%%"
902 AdditionalIncludeDirectories="%%includeDirectories_debug%%"
903 PreprocessorDefinitions="%%defines_debug%%"
904 MinimalRebuild="%%minimalRebuild%%"
905 BasicRuntimeChecks="3"
906 RuntimeLibrary="1"
907 EnableFunctionLevelLinking="TRUE"
908 ForceConformanceInForLoopScope="TRUE"
909 RuntimeTypeInfo="TRUE"
910 UsePrecompiledHeader="%%usepch%%"
911 PrecompiledHeaderThrough="%%pch%%"
912 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
913 AssemblerListingLocation="$(OutDir)/"
914 ObjectFile="$(OutDir)/"
915 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_d.pdb"
916 WarningLevel="4"
917 WarnAsError="TRUE"
918 SuppressStartupBanner="TRUE"
919 Detect64BitPortabilityProblems="FALSE"
920 DebugInformationFormat="%%dbgInfo_d%%"
921 CompileAs="0"
922 UseFullPaths="TRUE"
923 TreatWChar_tAsBuiltInType="FALSE"
925 <Tool
926 Name="VCCustomBuildTool"
928 <Tool
929 Name="VCLinkerTool"
930 AdditionalDependencies="%%libraries_debug%%"
931 OutputFile="$(OutDir)/$(ProjectName)_d.exe"
932 LinkIncremental="%%incremental_d%%"
933 AdditionalLibraryDirectories="%%libraryDirectories_debug%%"
934 IgnoreDefaultLibraryNames="%%ignoreLibraries_debug%%"
935 GenerateDebugInformation="TRUE"
936 ProgramDatabaseFile="$(OutDir)/$(ProjectName)_d.pdb"
937 SubSystem="2"
939 <Tool
940 Name="VCMIDLTool"
942 <Tool
943 Name="VCPostBuildEventTool"
945 <Tool
946 Name="VCPreBuildEventTool"
948 <Tool
949 Name="VCPreLinkEventTool"
951 <Tool
952 Name="VCResourceCompilerTool"
953 PreprocessorDefinitions="_DEBUG"
954 Culture="1033"
956 <Tool
957 Name="VCWebServiceProxyGeneratorTool"
959 <Tool
960 Name="VCXMLDataGeneratorTool"
962 <Tool
963 Name="VCManagedWrapperGeneratorTool"
965 <Tool
966 Name="VCAuxiliaryManagedWrapperGeneratorTool"
968 </Configuration>
969 <Configuration
970 Name="Optimized|Win32"
971 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
972 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
973 ConfigurationType="1"
974 UseOfMFC="0"
975 ATLMinimizesCRunTimeLibraryUsage="FALSE"
976 CharacterSet="2"
978 <Tool
979 Name="VCCLCompilerTool"
980 Optimization="%%opt_optimizationLevel%%"
981 InlineFunctionExpansion="1"
982 EnableIntrinsicFunctions="%%opt_intrinsicFunctions%%"
983 FavorSizeOrSpeed="%%opt_sizeOrSpeed%%"
984 OmitFramePointers="FALSE"
985 AdditionalIncludeDirectories="%%includeDirectories_optimized%%"
986 PreprocessorDefinitions="%%defines_optimized%%"
987 MinimalRebuild="%%minimalRebuild%%"
988 RuntimeLibrary="1"
989 EnableFunctionLevelLinking="TRUE"
990 ForceConformanceInForLoopScope="TRUE"
991 RuntimeTypeInfo="TRUE"
992 UsePrecompiledHeader="%%usepch%%"
993 PrecompiledHeaderThrough="%%pch%%"
994 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
995 AssemblerListingLocation="$(OutDir)/"
996 ObjectFile="$(OutDir)/"
997 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_o.pdb"
998 WarningLevel="4"
999 WarnAsError="TRUE"
1000 SuppressStartupBanner="TRUE"
1001 Detect64BitPortabilityProblems="FALSE"
1002 DebugInformationFormat="%%dbgInfo_o%%"
1003 CompileAs="0"
1004 UseFullPaths="TRUE"
1005 TreatWChar_tAsBuiltInType="FALSE"
1007 <Tool
1008 Name="VCCustomBuildTool"
1010 <Tool
1011 Name="VCLinkerTool"
1012 AdditionalDependencies="%%libraries_optimized%%"
1013 OutputFile="$(OutDir)/$(ProjectName)_o.exe"
1014 LinkIncremental="%%incremental_o%%"
1015 AdditionalLibraryDirectories="%%libraryDirectories_optimized%%"
1016 IgnoreDefaultLibraryNames="%%ignoreLibraries_optimized%%"
1017 GenerateDebugInformation="TRUE"
1018 ProgramDatabaseFile="$(OutDir)/$(ProjectName)_o.pdb"
1019 SubSystem="2"
1021 <Tool
1022 Name="VCMIDLTool"
1024 <Tool
1025 Name="VCPostBuildEventTool"
1027 <Tool
1028 Name="VCPreBuildEventTool"
1030 <Tool
1031 Name="VCPreLinkEventTool"
1033 <Tool
1034 Name="VCResourceCompilerTool"
1035 PreprocessorDefinitions="_DEBUG"
1036 Culture="1033"
1038 <Tool
1039 Name="VCWebServiceProxyGeneratorTool"
1041 <Tool
1042 Name="VCXMLDataGeneratorTool"
1044 <Tool
1045 Name="VCManagedWrapperGeneratorTool"
1047 <Tool
1048 Name="VCAuxiliaryManagedWrapperGeneratorTool"
1050 </Configuration>
1051 <Configuration
1052 Name="Release|Win32"
1053 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1054 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1055 ConfigurationType="1"
1056 UseOfMFC="0"
1057 ATLMinimizesCRunTimeLibraryUsage="FALSE"
1058 CharacterSet="2"
1060 <Tool
1061 Name="VCCLCompilerTool"
1062 Optimization="2"
1063 InlineFunctionExpansion="1"
1064 EnableIntrinsicFunctions="TRUE"
1065 FavorSizeOrSpeed="1"
1066 OmitFramePointers="TRUE"
1067 AdditionalIncludeDirectories="%%includeDirectories_release%%"
1068 PreprocessorDefinitions="%%defines_release%%"
1069 StringPooling="TRUE"
1070 RuntimeLibrary="0"
1071 EnableFunctionLevelLinking="TRUE"
1072 ForceConformanceInForLoopScope="TRUE"
1073 RuntimeTypeInfo="TRUE"
1074 UsePrecompiledHeader="%%usepch%%"
1075 PrecompiledHeaderThrough="%%pch%%"
1076 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
1077 AssemblerListingLocation="$(OutDir)/"
1078 ObjectFile="$(OutDir)/"
1079 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_r.pdb"
1080 WarningLevel="4"
1081 WarnAsError="TRUE"
1082 SuppressStartupBanner="TRUE"
1083 Detect64BitPortabilityProblems="FALSE"
1084 DebugInformationFormat="%%dbgInfo_r%%"
1085 CompileAs="0"
1086 UseFullPaths="TRUE"
1087 TreatWChar_tAsBuiltInType="FALSE"
1089 <Tool
1090 Name="VCCustomBuildTool"
1092 <Tool
1093 Name="VCLinkerTool"
1094 AdditionalDependencies="%%libraries_release%%"
1095 OutputFile="$(OutDir)/$(ProjectName)_r.exe"
1096 LinkIncremental="%%incremental_r%%"
1097 AdditionalLibraryDirectories="%%libraryDirectories_release%%"
1098 IgnoreDefaultLibraryNames="%%ignoreLibraries_release%%"
1099 GenerateDebugInformation="TRUE"
1100 ProgramDatabaseFile="$(OutDir)/$(ProjectName)_r.pdb"
1101 SubSystem="2"
1103 <Tool
1104 Name="VCMIDLTool"
1106 <Tool
1107 Name="VCPostBuildEventTool"
1109 <Tool
1110 Name="VCPreBuildEventTool"
1112 <Tool
1113 Name="VCPreLinkEventTool"
1115 <Tool
1116 Name="VCResourceCompilerTool"
1117 PreprocessorDefinitions="NDEBUG"
1118 Culture="1033"
1120 <Tool
1121 Name="VCWebServiceProxyGeneratorTool"
1123 <Tool
1124 Name="VCXMLDataGeneratorTool"
1126 <Tool
1127 Name="VCManagedWrapperGeneratorTool"
1129 <Tool
1130 Name="VCAuxiliaryManagedWrapperGeneratorTool"
1132 </Configuration>
1133 </Configurations>
1134 <References>
1135 </References>
1136 <Files>
1137 <Filter
1138 Name="Source Files"
1139 Filter="cpp;c;rc"
1141 %%sources%%
1142 </Filter>
1143 <Filter
1144 Name="Header Files"
1145 Filter="def;h;hpp;inl"
1147 %%headers%%
1148 </Filter>
1149 %%template%%
1150 %%resource%%
1151 </Files>
1152 <Globals>
1153 </Globals>
1154 </VisualStudioProject>
1157 $template_mfc = q@
1158 <?xml version="1.0" encoding="Windows-1252"?>
1159 <VisualStudioProject
1160 ProjectType="Visual C++"
1161 Version="8.00"
1162 Name="%%project%%"
1163 ProjectGUID="{%%guid%%}"
1164 Keyword="MFCProj"
1166 <Platforms>
1167 <Platform
1168 Name="Win32"
1170 </Platforms>
1171 <ToolFiles>
1172 </ToolFiles>
1173 <Configurations>
1174 <Configuration
1175 Name="Debug|Win32"
1176 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1177 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1178 ConfigurationType="1"
1179 UseOfMFC="1"
1180 ATLMinimizesCRunTimeLibraryUsage="FALSE"
1181 CharacterSet="2"
1183 <Tool
1184 Name="VCCLCompilerTool"
1185 Optimization="0"
1186 InlineFunctionExpansion="%%debugInline%%"
1187 AdditionalIncludeDirectories="%%includeDirectories_debug%%"
1188 PreprocessorDefinitions="%%defines_debug%%"
1189 MinimalRebuild="%%minimalRebuild%%"
1190 BasicRuntimeChecks="3"
1191 RuntimeLibrary="1"
1192 EnableFunctionLevelLinking="TRUE"
1193 TreatWChar_tAsBuiltInType="TRUE"
1194 ForceConformanceInForLoopScope="TRUE"
1195 RuntimeTypeInfo="TRUE"
1196 UsePrecompiledHeader="%%usepch%%"
1197 PrecompiledHeaderThrough="%%pch%%"
1198 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
1199 AssemblerListingLocation="$(OutDir)/"
1200 ObjectFile="$(OutDir)/"
1201 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_d.pdb"
1202 WarningLevel="4"
1203 WarnAsError="TRUE"
1204 SuppressStartupBanner="TRUE"
1205 Detect64BitPortabilityProblems="FALSE"
1206 DebugInformationFormat="%%dbgInfo_d%%"
1207 CompileAs="0"
1208 UseFullPaths="TRUE"
1210 <Tool
1211 Name="VCCustomBuildTool"
1213 <Tool
1214 Name="VCLinkerTool"
1215 AdditionalDependencies="%%libraries_debug%%"
1216 OutputFile="$(OutDir)/$(ProjectName)_d.exe"
1217 LinkIncremental="%%incremental_d%%"
1218 AdditionalLibraryDirectories="%%libraryDirectories_debug%%"
1219 IgnoreDefaultLibraryNames="%%ignoreLibraries_debug%%"
1220 GenerateDebugInformation="TRUE"
1221 ProgramDatabaseFile="$(OutDir)/$(ProjectName)_d.pdb"
1222 SubSystem="2"
1224 <Tool
1225 Name="VCMIDLTool"
1227 <Tool
1228 Name="VCPostBuildEventTool"
1230 <Tool
1231 Name="VCPreBuildEventTool"
1233 <Tool
1234 Name="VCPreLinkEventTool"
1236 <Tool
1237 Name="VCResourceCompilerTool"
1238 PreprocessorDefinitions="_DEBUG"
1239 Culture="1033"
1241 <Tool
1242 Name="VCWebServiceProxyGeneratorTool"
1244 <Tool
1245 Name="VCXMLDataGeneratorTool"
1247 <Tool
1248 Name="VCManagedWrapperGeneratorTool"
1250 <Tool
1251 Name="VCAuxiliaryManagedWrapperGeneratorTool"
1253 </Configuration>
1254 <Configuration
1255 Name="Optimized|Win32"
1256 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1257 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1258 ConfigurationType="1"
1259 UseOfMFC="1"
1260 ATLMinimizesCRunTimeLibraryUsage="FALSE"
1261 CharacterSet="2"
1263 <Tool
1264 Name="VCCLCompilerTool"
1265 Optimization="%%opt_optimizationLevel%%"
1266 InlineFunctionExpansion="1"
1267 EnableIntrinsicFunctions="%%opt_intrinsicFunctions%%"
1268 FavorSizeOrSpeed="%%opt_sizeOrSpeed%%"
1269 OmitFramePointers="FALSE"
1270 AdditionalIncludeDirectories="%%includeDirectories_optimized%%"
1271 PreprocessorDefinitions="%%defines_optimized%%"
1272 MinimalRebuild="%%minimalRebuild%%"
1273 RuntimeLibrary="1"
1274 EnableFunctionLevelLinking="TRUE"
1275 TreatWChar_tAsBuiltInType="TRUE"
1276 ForceConformanceInForLoopScope="TRUE"
1277 RuntimeTypeInfo="TRUE"
1278 UsePrecompiledHeader="%%usepch%%"
1279 PrecompiledHeaderThrough="%%pch%%"
1280 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
1281 AssemblerListingLocation="$(OutDir)/"
1282 ObjectFile="$(OutDir)/"
1283 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_o.pdb"
1284 WarningLevel="4"
1285 WarnAsError="TRUE"
1286 SuppressStartupBanner="TRUE"
1287 Detect64BitPortabilityProblems="FALSE"
1288 DebugInformationFormat="%%dbgInfo_o%%"
1289 CompileAs="0"
1290 UseFullPaths="TRUE"
1292 <Tool
1293 Name="VCCustomBuildTool"
1295 <Tool
1296 Name="VCLinkerTool"
1297 AdditionalDependencies="%%libraries_optimized%%"
1298 OutputFile="$(OutDir)/$(ProjectName)_o.exe"
1299 LinkIncremental="%%incremental_o%%"
1300 AdditionalLibraryDirectories="%%libraryDirectories_optimized%%"
1301 IgnoreDefaultLibraryNames="%%ignoreLibraries_optimized%%"
1302 GenerateDebugInformation="TRUE"
1303 ProgramDatabaseFile="$(OutDir)/$(ProjectName)_o.pdb"
1304 SubSystem="2"
1306 <Tool
1307 Name="VCMIDLTool"
1309 <Tool
1310 Name="VCPostBuildEventTool"
1312 <Tool
1313 Name="VCPreBuildEventTool"
1315 <Tool
1316 Name="VCPreLinkEventTool"
1318 <Tool
1319 Name="VCResourceCompilerTool"
1320 PreprocessorDefinitions="_DEBUG"
1321 Culture="1033"
1323 <Tool
1324 Name="VCWebServiceProxyGeneratorTool"
1326 <Tool
1327 Name="VCXMLDataGeneratorTool"
1329 <Tool
1330 Name="VCManagedWrapperGeneratorTool"
1332 <Tool
1333 Name="VCAuxiliaryManagedWrapperGeneratorTool"
1335 </Configuration>
1336 <Configuration
1337 Name="Release|Win32"
1338 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1339 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1340 ConfigurationType="1"
1341 UseOfMFC="1"
1342 ATLMinimizesCRunTimeLibraryUsage="FALSE"
1343 CharacterSet="2"
1345 <Tool
1346 Name="VCCLCompilerTool"
1347 Optimization="2"
1348 InlineFunctionExpansion="1"
1349 EnableIntrinsicFunctions="TRUE"
1350 FavorSizeOrSpeed="1"
1351 OmitFramePointers="TRUE"
1352 AdditionalIncludeDirectories="%%includeDirectories_release%%"
1353 PreprocessorDefinitions="%%defines_release%%"
1354 StringPooling="TRUE"
1355 RuntimeLibrary="0"
1356 EnableFunctionLevelLinking="TRUE"
1357 TreatWChar_tAsBuiltInType="TRUE"
1358 ForceConformanceInForLoopScope="TRUE"
1359 RuntimeTypeInfo="TRUE"
1360 UsePrecompiledHeader="%%usepch%%"
1361 PrecompiledHeaderThrough="%%pch%%"
1362 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
1363 AssemblerListingLocation="$(OutDir)/"
1364 ObjectFile="$(OutDir)/"
1365 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_r.pdb"
1366 WarningLevel="4"
1367 WarnAsError="TRUE"
1368 SuppressStartupBanner="TRUE"
1369 Detect64BitPortabilityProblems="FALSE"
1370 DebugInformationFormat="%%dbgInfo_r%%"
1371 CompileAs="0"
1372 UseFullPaths="TRUE"
1374 <Tool
1375 Name="VCCustomBuildTool"
1377 <Tool
1378 Name="VCLinkerTool"
1379 AdditionalDependencies="%%libraries_release%%"
1380 OutputFile="$(OutDir)/$(ProjectName)_r.exe"
1381 LinkIncremental="%%incremental_r%%"
1382 AdditionalLibraryDirectories="%%libraryDirectories_release%%"
1383 IgnoreDefaultLibraryNames="%%ignoreLibraries_release%%"
1384 GenerateDebugInformation="TRUE"
1385 ProgramDatabaseFile="$(OutDir)/$(ProjectName)_r.pdb"
1386 SubSystem="2"
1388 <Tool
1389 Name="VCMIDLTool"
1391 <Tool
1392 Name="VCPostBuildEventTool"
1394 <Tool
1395 Name="VCPreBuildEventTool"
1397 <Tool
1398 Name="VCPreLinkEventTool"
1400 <Tool
1401 Name="VCResourceCompilerTool"
1402 PreprocessorDefinitions="NDEBUG"
1403 Culture="1033"
1405 <Tool
1406 Name="VCWebServiceProxyGeneratorTool"
1408 <Tool
1409 Name="VCXMLDataGeneratorTool"
1411 <Tool
1412 Name="VCManagedWrapperGeneratorTool"
1414 <Tool
1415 Name="VCAuxiliaryManagedWrapperGeneratorTool"
1417 </Configuration>
1418 </Configurations>
1419 <References>
1420 </References>
1421 <Files>
1422 <Filter
1423 Name="Source Files"
1424 Filter="cpp;c;rc"
1426 %%sources%%
1427 </Filter>
1428 <Filter
1429 Name="Header Files"
1430 Filter="def;h;hpp;inl"
1432 %%headers%%
1433 </Filter>
1434 %%template%%
1435 %%resource%%
1436 </Files>
1437 <Globals>
1438 </Globals>
1439 </VisualStudioProject>
1442 $template_qt= q@
1443 <?xml version="1.0" encoding="Windows-1252"?>
1444 <VisualStudioProject
1445 ProjectType="Visual C++"
1446 Version="8.00"
1447 Name="%%project%%"
1448 ProjectGUID="{%%guid%%}"
1449 Keyword="Win32Proj"
1451 <Platforms>
1452 <Platform
1453 Name="Win32"
1455 </Platforms>
1456 <ToolFiles>
1457 </ToolFiles>
1458 <Configurations>
1459 <Configuration
1460 Name="Debug|Win32"
1461 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1462 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1463 ConfigurationType="1"
1464 UseOfMFC="0"
1465 ATLMinimizesCRunTimeLibraryUsage="FALSE"
1466 CharacterSet="2"
1468 <Tool
1469 Name="VCCLCompilerTool"
1470 Optimization="0"
1471 InlineFunctionExpansion="%%debugInline%%"
1472 AdditionalIncludeDirectories="%%includeDirectories_debug%%"
1473 PreprocessorDefinitions="%%defines_debug%%"
1474 MinimalRebuild="%%minimalRebuild%%"
1475 BasicRuntimeChecks="3"
1476 RuntimeLibrary="1"
1477 EnableFunctionLevelLinking="TRUE"
1478 ForceConformanceInForLoopScope="TRUE"
1479 RuntimeTypeInfo="TRUE"
1480 UsePrecompiledHeader="%%usepch%%"
1481 PrecompiledHeaderThrough="%%pch%%"
1482 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
1483 AssemblerListingLocation="$(OutDir)/"
1484 ObjectFile="$(OutDir)/"
1485 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_d.pdb"
1486 WarningLevel="4"
1487 WarnAsError="TRUE"
1488 SuppressStartupBanner="TRUE"
1489 Detect64BitPortabilityProblems="FALSE"
1490 DebugInformationFormat="%%dbgInfo_d%%"
1491 CompileAs="0"
1492 UseFullPaths="TRUE"
1493 TreatWChar_tAsBuiltInType="FALSE"
1495 <Tool
1496 Name="VCCustomBuildTool"
1498 <Tool
1499 Name="VCLinkerTool"
1500 AdditionalDependencies="%%libraries_debug%%"
1501 OutputFile="$(OutDir)/$(ProjectName)_d.exe"
1502 LinkIncremental="%%incremental_d%%"
1503 AdditionalLibraryDirectories="%%libraryDirectories_debug%%"
1504 IgnoreDefaultLibraryNames="%%ignoreLibraries_debug%%"
1505 GenerateDebugInformation="TRUE"
1506 ProgramDatabaseFile="$(OutDir)/$(ProjectName)_d.pdb"
1507 SubSystem="2"
1509 <Tool
1510 Name="VCMIDLTool"
1512 <Tool
1513 Name="VCPostBuildEventTool"
1515 <Tool
1516 Name="VCPreBuildEventTool"
1518 <Tool
1519 Name="VCPreLinkEventTool"
1521 <Tool
1522 Name="VCResourceCompilerTool"
1523 PreprocessorDefinitions="_DEBUG"
1524 Culture="1033"
1526 <Tool
1527 Name="VCWebServiceProxyGeneratorTool"
1529 <Tool
1530 Name="VCXMLDataGeneratorTool"
1532 <Tool
1533 Name="VCManagedWrapperGeneratorTool"
1535 <Tool
1536 Name="VCAuxiliaryManagedWrapperGeneratorTool"
1538 </Configuration>
1539 <Configuration
1540 Name="Optimized|Win32"
1541 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1542 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1543 ConfigurationType="1"
1544 UseOfMFC="0"
1545 ATLMinimizesCRunTimeLibraryUsage="FALSE"
1546 CharacterSet="2"
1548 <Tool
1549 Name="VCCLCompilerTool"
1550 Optimization="%%opt_optimizationLevel%%"
1551 InlineFunctionExpansion="1"
1552 EnableIntrinsicFunctions="%%opt_intrinsicFunctions%%"
1553 FavorSizeOrSpeed="%%opt_sizeOrSpeed%%"
1554 OmitFramePointers="FALSE"
1555 AdditionalIncludeDirectories="%%includeDirectories_optimized%%"
1556 PreprocessorDefinitions="%%defines_optimized%%"
1557 MinimalRebuild="%%minimalRebuild%%"
1558 RuntimeLibrary="1"
1559 EnableFunctionLevelLinking="TRUE"
1560 ForceConformanceInForLoopScope="TRUE"
1561 RuntimeTypeInfo="TRUE"
1562 UsePrecompiledHeader="%%usepch%%"
1563 PrecompiledHeaderThrough="%%pch%%"
1564 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
1565 AssemblerListingLocation="$(OutDir)/"
1566 ObjectFile="$(OutDir)/"
1567 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_o.pdb"
1568 WarningLevel="4"
1569 WarnAsError="TRUE"
1570 SuppressStartupBanner="TRUE"
1571 Detect64BitPortabilityProblems="FALSE"
1572 DebugInformationFormat="%%dbgInfo_o%%"
1573 CompileAs="0"
1574 UseFullPaths="TRUE"
1575 TreatWChar_tAsBuiltInType="FALSE"
1577 <Tool
1578 Name="VCCustomBuildTool"
1580 <Tool
1581 Name="VCLinkerTool"
1582 AdditionalDependencies="%%libraries_optimized%%"
1583 OutputFile="$(OutDir)/$(ProjectName)_o.exe"
1584 LinkIncremental="%%incremental_o%%"
1585 AdditionalLibraryDirectories="%%libraryDirectories_optimized%%"
1586 IgnoreDefaultLibraryNames="%%ignoreLibraries_optimized%%"
1587 GenerateDebugInformation="TRUE"
1588 ProgramDatabaseFile="$(OutDir)/$(ProjectName)_o.pdb"
1589 SubSystem="2"
1591 <Tool
1592 Name="VCMIDLTool"
1594 <Tool
1595 Name="VCPostBuildEventTool"
1597 <Tool
1598 Name="VCPreBuildEventTool"
1600 <Tool
1601 Name="VCPreLinkEventTool"
1603 <Tool
1604 Name="VCResourceCompilerTool"
1605 PreprocessorDefinitions="_DEBUG"
1606 Culture="1033"
1608 <Tool
1609 Name="VCWebServiceProxyGeneratorTool"
1611 <Tool
1612 Name="VCXMLDataGeneratorTool"
1614 <Tool
1615 Name="VCManagedWrapperGeneratorTool"
1617 <Tool
1618 Name="VCAuxiliaryManagedWrapperGeneratorTool"
1620 </Configuration>
1621 <Configuration
1622 Name="Release|Win32"
1623 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1624 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1625 ConfigurationType="1"
1626 UseOfMFC="0"
1627 ATLMinimizesCRunTimeLibraryUsage="FALSE"
1628 CharacterSet="2"
1630 <Tool
1631 Name="VCCLCompilerTool"
1632 Optimization="2"
1633 InlineFunctionExpansion="1"
1634 EnableIntrinsicFunctions="TRUE"
1635 FavorSizeOrSpeed="1"
1636 OmitFramePointers="TRUE"
1637 AdditionalIncludeDirectories="%%includeDirectories_release%%"
1638 PreprocessorDefinitions="%%defines_release%%"
1639 StringPooling="TRUE"
1640 RuntimeLibrary="0"
1641 EnableFunctionLevelLinking="TRUE"
1642 ForceConformanceInForLoopScope="TRUE"
1643 RuntimeTypeInfo="TRUE"
1644 UsePrecompiledHeader="%%usepch%%"
1645 PrecompiledHeaderThrough="%%pch%%"
1646 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
1647 AssemblerListingLocation="$(OutDir)/"
1648 ObjectFile="$(OutDir)/"
1649 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_r.pdb"
1650 WarningLevel="4"
1651 WarnAsError="TRUE"
1652 SuppressStartupBanner="TRUE"
1653 Detect64BitPortabilityProblems="FALSE"
1654 DebugInformationFormat="%%dbgInfo_r%%"
1655 CompileAs="0"
1656 UseFullPaths="TRUE"
1657 TreatWChar_tAsBuiltInType="FALSE"
1659 <Tool
1660 Name="VCCustomBuildTool"
1662 <Tool
1663 Name="VCLinkerTool"
1664 AdditionalDependencies="%%libraries_release%%"
1665 OutputFile="$(OutDir)/$(ProjectName)_r.exe"
1666 LinkIncremental="%%incremental_r%%"
1667 AdditionalLibraryDirectories="%%libraryDirectories_release%%"
1668 IgnoreDefaultLibraryNames="%%ignoreLibraries_release%%"
1669 GenerateDebugInformation="TRUE"
1670 ProgramDatabaseFile="$(OutDir)/$(ProjectName)_r.pdb"
1671 SubSystem="2"
1673 <Tool
1674 Name="VCMIDLTool"
1676 <Tool
1677 Name="VCPostBuildEventTool"
1679 <Tool
1680 Name="VCPreBuildEventTool"
1682 <Tool
1683 Name="VCPreLinkEventTool"
1685 <Tool
1686 Name="VCResourceCompilerTool"
1687 PreprocessorDefinitions="NDEBUG"
1688 Culture="1033"
1690 <Tool
1691 Name="VCWebServiceProxyGeneratorTool"
1693 <Tool
1694 Name="VCXMLDataGeneratorTool"
1696 <Tool
1697 Name="VCManagedWrapperGeneratorTool"
1699 <Tool
1700 Name="VCAuxiliaryManagedWrapperGeneratorTool"
1702 </Configuration>
1703 </Configurations>
1704 <References>
1705 </References>
1706 <Files>
1707 <Filter
1708 Name="Source Files"
1709 Filter="cpp;c;rc"
1711 %%sources%%
1712 </Filter>
1713 <Filter
1714 Name="Header Files"
1715 Filter="def;h;hpp;inl"
1717 %%headers%%
1718 </Filter>
1719 <Filter
1720 Name="Ui Files"
1721 Filter="ui"
1723 %%uis%%
1724 </Filter>
1725 <Filter
1726 Name="Ui Generated Files"
1727 Filter=""
1729 <Filter
1730 Name="Debug"
1731 Filter=""
1733 <Filter
1734 Name="Debug Ui Source Files"
1735 Filter=""
1737 %%uiGeneratedSources_debug%%
1738 </Filter>
1739 <Filter
1740 Name="Debug Ui Header Files"
1741 Filter=""
1743 %%uiGeneratedHeaders_debug%%
1744 </Filter>
1745 </Filter>
1746 <Filter
1747 Name="Optimized"
1748 Filter=""
1750 <Filter
1751 Name="Optimized Ui Source Files"
1752 Filter=""
1754 %%uiGeneratedSources_optimized%%
1755 </Filter>
1756 <Filter
1757 Name="Optimized Ui Header Files"
1758 Filter=""
1760 %%uiGeneratedHeaders_optimized%%
1761 </Filter>
1762 </Filter>
1763 <Filter
1764 Name="Release"
1765 Filter=""
1767 <Filter
1768 Name="Release Ui Source Files"
1769 Filter=""
1771 %%uiGeneratedSources_release%%
1772 </Filter>
1773 <Filter
1774 Name="Release Ui Header Files"
1775 Filter=""
1777 %%uiGeneratedHeaders_release%%
1778 </Filter>
1779 </Filter>
1780 </Filter>
1781 %%resource%%
1782 %%template%%
1783 </Files>
1784 <Globals>
1785 </Globals>
1786 </VisualStudioProject>
1789 $template_console = q@
1790 <?xml version="1.0" encoding="Windows-1252"?>
1791 <VisualStudioProject
1792 ProjectType="Visual C++"
1793 Version="8.00"
1794 Name="%%project%%"
1795 ProjectGUID="{%%guid%%}"
1796 Keyword="Win32Proj"
1798 <Platforms>
1799 <Platform
1800 Name="Win32"
1802 </Platforms>
1803 <ToolFiles>
1804 </ToolFiles>
1805 <Configurations>
1806 <Configuration
1807 Name="Debug|Win32"
1808 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1809 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1810 ConfigurationType="1"
1811 UseOfMFC="0"
1812 ATLMinimizesCRunTimeLibraryUsage="FALSE"
1813 CharacterSet="2"
1815 <Tool
1816 Name="VCCLCompilerTool"
1817 Optimization="0"
1818 InlineFunctionExpansion="%%debugInline%%"
1819 AdditionalIncludeDirectories="%%includeDirectories_debug%%"
1820 PreprocessorDefinitions="%%defines_debug%%"
1821 MinimalRebuild="%%minimalRebuild%%"
1822 BasicRuntimeChecks="3"
1823 RuntimeLibrary="1"
1824 EnableFunctionLevelLinking="TRUE"
1825 ForceConformanceInForLoopScope="TRUE"
1826 RuntimeTypeInfo="TRUE"
1827 UsePrecompiledHeader="%%usepch%%"
1828 PrecompiledHeaderThrough="%%pch%%"
1829 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
1830 AssemblerListingLocation="$(OutDir)/"
1831 ObjectFile="$(OutDir)/"
1832 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_d.pdb"
1833 WarningLevel="4"
1834 WarnAsError="TRUE"
1835 SuppressStartupBanner="TRUE"
1836 Detect64BitPortabilityProblems="FALSE"
1837 DebugInformationFormat="%%dbgInfo_d%%"
1838 CompileAs="0"
1839 UseFullPaths="TRUE"
1840 TreatWChar_tAsBuiltInType="FALSE"
1842 <Tool
1843 Name="VCCustomBuildTool"
1845 <Tool
1846 Name="VCLinkerTool"
1847 AdditionalDependencies="%%libraries_debug%%"
1848 OutputFile="$(OutDir)/$(ProjectName)_d.exe"
1849 LinkIncremental="%%incremental_d%%"
1850 AdditionalLibraryDirectories="%%libraryDirectories_debug%%"
1851 IgnoreDefaultLibraryNames="%%ignoreLibraries_debug%%"
1852 GenerateDebugInformation="TRUE"
1853 ProgramDatabaseFile="$(OutDir)/$(ProjectName)_d.pdb"
1854 SubSystem="1"
1856 <Tool
1857 Name="VCMIDLTool"
1859 <Tool
1860 Name="VCPostBuildEventTool"
1862 <Tool
1863 Name="VCPreBuildEventTool"
1865 <Tool
1866 Name="VCPreLinkEventTool"
1868 <Tool
1869 Name="VCResourceCompilerTool"
1870 PreprocessorDefinitions="_DEBUG"
1871 Culture="1033"
1873 <Tool
1874 Name="VCWebServiceProxyGeneratorTool"
1876 <Tool
1877 Name="VCXMLDataGeneratorTool"
1879 <Tool
1880 Name="VCManagedWrapperGeneratorTool"
1882 <Tool
1883 Name="VCAuxiliaryManagedWrapperGeneratorTool"
1885 </Configuration>
1886 <Configuration
1887 Name="Optimized|Win32"
1888 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1889 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1890 ConfigurationType="1"
1891 UseOfMFC="0"
1892 ATLMinimizesCRunTimeLibraryUsage="FALSE"
1893 CharacterSet="2"
1895 <Tool
1896 Name="VCCLCompilerTool"
1897 Optimization="3"
1898 InlineFunctionExpansion="1"
1899 EnableIntrinsicFunctions="TRUE"
1900 FavorSizeOrSpeed="1"
1901 OmitFramePointers="FALSE"
1902 AdditionalIncludeDirectories="%%includeDirectories_optimized%%"
1903 PreprocessorDefinitions="%%defines_optimized%%"
1904 MinimalRebuild="%%minimalRebuild%%"
1905 RuntimeLibrary="1"
1906 EnableFunctionLevelLinking="TRUE"
1907 ForceConformanceInForLoopScope="TRUE"
1908 RuntimeTypeInfo="TRUE"
1909 UsePrecompiledHeader="%%usepch%%"
1910 PrecompiledHeaderThrough="%%pch%%"
1911 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
1912 AssemblerListingLocation="$(OutDir)/"
1913 ObjectFile="$(OutDir)/"
1914 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_o.pdb"
1915 WarningLevel="4"
1916 WarnAsError="TRUE"
1917 SuppressStartupBanner="TRUE"
1918 Detect64BitPortabilityProblems="FALSE"
1919 DebugInformationFormat="%%dbgInfo_o%%"
1920 CompileAs="0"
1921 UseFullPaths="TRUE"
1922 TreatWChar_tAsBuiltInType="FALSE"
1924 <Tool
1925 Name="VCCustomBuildTool"
1927 <Tool
1928 Name="VCLinkerTool"
1929 AdditionalDependencies="%%libraries_optimized%%"
1930 OutputFile="$(OutDir)/$(ProjectName)_o.exe"
1931 LinkIncremental="%%incremental_o%%"
1932 AdditionalLibraryDirectories="%%libraryDirectories_optimized%%"
1933 IgnoreDefaultLibraryNames="%%ignoreLibraries_optimized%%"
1934 GenerateDebugInformation="TRUE"
1935 ProgramDatabaseFile="$(OutDir)/$(ProjectName)_o.pdb"
1936 SubSystem="1"
1938 <Tool
1939 Name="VCMIDLTool"
1941 <Tool
1942 Name="VCPostBuildEventTool"
1944 <Tool
1945 Name="VCPreBuildEventTool"
1947 <Tool
1948 Name="VCPreLinkEventTool"
1950 <Tool
1951 Name="VCResourceCompilerTool"
1952 PreprocessorDefinitions="_DEBUG"
1953 Culture="1033"
1955 <Tool
1956 Name="VCWebServiceProxyGeneratorTool"
1958 <Tool
1959 Name="VCXMLDataGeneratorTool"
1961 <Tool
1962 Name="VCManagedWrapperGeneratorTool"
1964 <Tool
1965 Name="VCAuxiliaryManagedWrapperGeneratorTool"
1967 </Configuration>
1968 <Configuration
1969 Name="Release|Win32"
1970 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1971 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
1972 ConfigurationType="1"
1973 UseOfMFC="0"
1974 ATLMinimizesCRunTimeLibraryUsage="FALSE"
1975 CharacterSet="2"
1977 <Tool
1978 Name="VCCLCompilerTool"
1979 Optimization="2"
1980 InlineFunctionExpansion="1"
1981 EnableIntrinsicFunctions="TRUE"
1982 FavorSizeOrSpeed="1"
1983 OmitFramePointers="TRUE"
1984 AdditionalIncludeDirectories="%%includeDirectories_release%%"
1985 PreprocessorDefinitions="%%defines_release%%"
1986 StringPooling="TRUE"
1987 RuntimeLibrary="0"
1988 EnableFunctionLevelLinking="TRUE"
1989 ForceConformanceInForLoopScope="TRUE"
1990 RuntimeTypeInfo="TRUE"
1991 UsePrecompiledHeader="%%usepch%%"
1992 PrecompiledHeaderThrough="%%pch%%"
1993 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
1994 AssemblerListingLocation="$(OutDir)/"
1995 ObjectFile="$(OutDir)/"
1996 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_r.pdb"
1997 WarningLevel="4"
1998 WarnAsError="TRUE"
1999 SuppressStartupBanner="TRUE"
2000 Detect64BitPortabilityProblems="FALSE"
2001 DebugInformationFormat="%%dbgInfo_r%%"
2002 CompileAs="0"
2003 UseFullPaths="TRUE"
2004 TreatWChar_tAsBuiltInType="FALSE"
2006 <Tool
2007 Name="VCCustomBuildTool"
2009 <Tool
2010 Name="VCLinkerTool"
2011 AdditionalDependencies="%%libraries_release%%"
2012 OutputFile="$(OutDir)/$(ProjectName)_r.exe"
2013 LinkIncremental="%%incremental_r%%"
2014 AdditionalLibraryDirectories="%%libraryDirectories_release%%"
2015 IgnoreDefaultLibraryNames="%%ignoreLibraries_release%%"
2016 GenerateDebugInformation="TRUE"
2017 ProgramDatabaseFile="$(OutDir)/$(ProjectName)_r.pdb"
2018 SubSystem="1"
2020 <Tool
2021 Name="VCMIDLTool"
2023 <Tool
2024 Name="VCPostBuildEventTool"
2026 <Tool
2027 Name="VCPreBuildEventTool"
2029 <Tool
2030 Name="VCPreLinkEventTool"
2032 <Tool
2033 Name="VCResourceCompilerTool"
2034 PreprocessorDefinitions="NDEBUG"
2035 Culture="1033"
2037 <Tool
2038 Name="VCWebServiceProxyGeneratorTool"
2040 <Tool
2041 Name="VCXMLDataGeneratorTool"
2043 <Tool
2044 Name="VCManagedWrapperGeneratorTool"
2046 <Tool
2047 Name="VCAuxiliaryManagedWrapperGeneratorTool"
2049 </Configuration>
2050 </Configurations>
2051 <References>
2052 </References>
2053 <Files>
2054 <Filter
2055 Name="Source Files"
2056 Filter="cpp;c;rc"
2058 %%sources%%
2059 </Filter>
2060 <Filter
2061 Name="Header Files"
2062 Filter="def;h;hpp;inl"
2064 %%headers%%
2065 </Filter>
2066 %%template%%
2067 </Files>
2068 <Globals>
2069 </Globals>
2070 </VisualStudioProject>
2073 $template_library = q@
2074 <?xml version="1.0" encoding="Windows-1252"?>
2075 <VisualStudioProject
2076 ProjectType="Visual C++"
2077 Version="8.00"
2078 Name="%%project%%"
2079 ProjectGUID="{%%guid%%}"
2080 Keyword="Win32Proj"
2082 <Platforms>
2083 <Platform
2084 Name="Win32"
2086 </Platforms>
2087 <ToolFiles>
2088 </ToolFiles>
2089 <Configurations>
2090 <Configuration
2091 Name="Debug|Win32"
2092 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
2093 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
2094 ConfigurationType="4"
2095 UseOfMFC="0"
2096 ATLMinimizesCRunTimeLibraryUsage="FALSE"
2097 CharacterSet="2"
2099 <Tool
2100 Name="VCCLCompilerTool"
2101 Optimization="0"
2102 InlineFunctionExpansion="%%debugInline%%"
2103 AdditionalIncludeDirectories="%%includeDirectories_debug%%"
2104 PreprocessorDefinitions="%%defines_debug%%"
2105 MinimalRebuild="%%minimalRebuild%%"
2106 BasicRuntimeChecks="3"
2107 RuntimeLibrary="1"
2108 EnableFunctionLevelLinking="TRUE"
2109 ForceConformanceInForLoopScope="TRUE"
2110 RuntimeTypeInfo="TRUE"
2111 UsePrecompiledHeader="%%usepch%%"
2112 PrecompiledHeaderThrough="%%pch%%"
2113 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
2114 AssemblerListingLocation="$(OutDir)/"
2115 ObjectFile="$(OutDir)/"
2116 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_d.pdb"
2117 WarningLevel="4"
2118 WarnAsError="TRUE"
2119 SuppressStartupBanner="TRUE"
2120 Detect64BitPortabilityProblems="FALSE"
2121 DebugInformationFormat="%%dbgInfo_d%%"
2122 CompileAs="0"
2123 UseFullPaths="TRUE"
2124 TreatWChar_tAsBuiltInType="FALSE"
2126 <Tool
2127 Name="VCCustomBuildTool"
2129 <Tool
2130 Name="VCLibrarianTool"
2131 OutputFile="$(OutDir)\$(ProjectName).lib"
2132 SuppressStartupBanner="TRUE"
2134 <Tool
2135 Name="VCMIDLTool"
2137 <Tool
2138 Name="VCPostBuildEventTool"
2140 <Tool
2141 Name="VCPreBuildEventTool"
2143 <Tool
2144 Name="VCPreLinkEventTool"
2146 <Tool
2147 Name="VCResourceCompilerTool"
2148 PreprocessorDefinitions="_DEBUG"
2149 Culture="1033"
2151 <Tool
2152 Name="VCWebServiceProxyGeneratorTool"
2154 <Tool
2155 Name="VCXMLDataGeneratorTool"
2157 <Tool
2158 Name="VCManagedWrapperGeneratorTool"
2160 <Tool
2161 Name="VCAuxiliaryManagedWrapperGeneratorTool"
2163 </Configuration>
2164 <Configuration
2165 Name="Optimized|Win32"
2166 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
2167 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
2168 ConfigurationType="4"
2169 UseOfMFC="0"
2170 ATLMinimizesCRunTimeLibraryUsage="FALSE"
2171 CharacterSet="2"
2173 <Tool
2174 Name="VCCLCompilerTool"
2175 Optimization="3"
2176 InlineFunctionExpansion="1"
2177 EnableIntrinsicFunctions="TRUE"
2178 FavorSizeOrSpeed="1"
2179 OmitFramePointers="FALSE"
2180 AdditionalIncludeDirectories="%%includeDirectories_optimized%%"
2181 PreprocessorDefinitions="%%defines_optimized%%"
2182 MinimalRebuild="%%minimalRebuild%%"
2183 RuntimeLibrary="1"
2184 EnableFunctionLevelLinking="TRUE"
2185 ForceConformanceInForLoopScope="TRUE"
2186 RuntimeTypeInfo="TRUE"
2187 UsePrecompiledHeader="%%usepch%%"
2188 PrecompiledHeaderThrough="%%pch%%"
2189 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
2190 AssemblerListingLocation="$(OutDir)/"
2191 ObjectFile="$(OutDir)/"
2192 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_o.pdb"
2193 WarningLevel="4"
2194 WarnAsError="TRUE"
2195 SuppressStartupBanner="TRUE"
2196 Detect64BitPortabilityProblems="FALSE"
2197 DebugInformationFormat="%%dbgInfo_o%%"
2198 CompileAs="0"
2199 UseFullPaths="TRUE"
2200 TreatWChar_tAsBuiltInType="FALSE"
2202 <Tool
2203 Name="VCCustomBuildTool"
2205 <Tool
2206 Name="VCLibrarianTool"
2207 OutputFile="$(OutDir)\$(ProjectName).lib"
2208 SuppressStartupBanner="TRUE"
2210 <Tool
2211 Name="VCMIDLTool"
2213 <Tool
2214 Name="VCPostBuildEventTool"
2216 <Tool
2217 Name="VCPreBuildEventTool"
2219 <Tool
2220 Name="VCPreLinkEventTool"
2222 <Tool
2223 Name="VCResourceCompilerTool"
2224 PreprocessorDefinitions="_DEBUG"
2225 Culture="1033"
2227 <Tool
2228 Name="VCWebServiceProxyGeneratorTool"
2230 <Tool
2231 Name="VCXMLDataGeneratorTool"
2233 <Tool
2234 Name="VCManagedWrapperGeneratorTool"
2236 <Tool
2237 Name="VCAuxiliaryManagedWrapperGeneratorTool"
2239 </Configuration>
2240 <Configuration
2241 Name="Release|Win32"
2242 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
2243 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
2244 ConfigurationType="4"
2245 UseOfMFC="0"
2246 ATLMinimizesCRunTimeLibraryUsage="FALSE"
2247 CharacterSet="2"
2249 <Tool
2250 Name="VCCLCompilerTool"
2251 Optimization="2"
2252 InlineFunctionExpansion="1"
2253 EnableIntrinsicFunctions="TRUE"
2254 FavorSizeOrSpeed="1"
2255 OmitFramePointers="TRUE"
2256 AdditionalIncludeDirectories="%%includeDirectories_release%%"
2257 PreprocessorDefinitions="%%defines_release%%"
2258 StringPooling="TRUE"
2259 RuntimeLibrary="0"
2260 EnableFunctionLevelLinking="TRUE"
2261 ForceConformanceInForLoopScope="TRUE"
2262 RuntimeTypeInfo="TRUE"
2263 UsePrecompiledHeader="%%usepch%%"
2264 PrecompiledHeaderThrough="%%pch%%"
2265 PrecompiledHeaderFile="$(OutDir)\$(ProjectName).pch"
2266 AssemblerListingLocation="$(OutDir)/"
2267 ObjectFile="$(OutDir)/"
2268 ProgramDataBaseFileName="$(OutDir)\$(ProjectName)_r.pdb"
2269 WarningLevel="4"
2270 WarnAsError="TRUE"
2271 SuppressStartupBanner="TRUE"
2272 Detect64BitPortabilityProblems="FALSE"
2273 DebugInformationFormat="%%dbgInfo_r%%"
2274 CompileAs="0"
2275 UseFullPaths="TRUE"
2276 TreatWChar_tAsBuiltInType="FALSE"
2278 <Tool
2279 Name="VCCustomBuildTool"
2281 <Tool
2282 Name="VCLibrarianTool"
2283 OutputFile="$(OutDir)\$(ProjectName).lib"
2284 SuppressStartupBanner="TRUE"
2286 <Tool
2287 Name="VCMIDLTool"
2289 <Tool
2290 Name="VCPostBuildEventTool"
2292 <Tool
2293 Name="VCPreBuildEventTool"
2295 <Tool
2296 Name="VCPreLinkEventTool"
2298 <Tool
2299 Name="VCResourceCompilerTool"
2300 PreprocessorDefinitions="NDEBUG"
2301 Culture="1033"
2303 <Tool
2304 Name="VCWebServiceProxyGeneratorTool"
2306 <Tool
2307 Name="VCXMLDataGeneratorTool"
2309 <Tool
2310 Name="VCManagedWrapperGeneratorTool"
2312 <Tool
2313 Name="VCAuxiliaryManagedWrapperGeneratorTool"
2315 </Configuration>
2316 </Configurations>
2317 <References>
2318 </References>
2319 <Files>
2320 <Filter
2321 Name="Source Files"
2322 Filter="cpp;c;rc"
2324 %%sources%%
2325 </Filter>
2326 <Filter
2327 Name="Header Files"
2328 Filter="def;h;hpp;inl"
2330 %%headers%%
2331 </Filter>
2332 %%template%%
2333 </Files>
2334 <Globals>
2335 </Globals>
2336 </VisualStudioProject>
2339 $template_utility = q@
2340 <?xml version="1.0" encoding="Windows-1252"?>
2341 <VisualStudioProject
2342 ProjectType="Visual C++"
2343 Version="8.00"
2344 Name="%%project%%"
2345 ProjectGUID="{%%guid%%}"
2346 Keyword="Win32Proj"
2348 <Platforms>
2349 <Platform
2350 Name="Win32"
2352 </Platforms>
2353 <ToolFiles>
2354 </ToolFiles>
2355 <Configurations>
2356 <Configuration
2357 Name="Debug|Win32"
2358 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
2359 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
2360 ConfigurationType="10"
2361 UseOfMFC="0"
2362 ATLMinimizesCRunTimeLibraryUsage="FALSE"
2363 CharacterSet="2"
2365 <Tool
2366 Name="VCCustomBuildTool"
2368 <Tool
2369 Name="VCMIDLTool"
2371 <Tool
2372 Name="VCPostBuildEventTool"
2374 <Tool
2375 Name="VCPreBuildEventTool"
2377 </Configuration>
2378 <Configuration
2379 Name="Optimized|Win32"
2380 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
2381 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
2382 ConfigurationType="10"
2383 UseOfMFC="0"
2384 ATLMinimizesCRunTimeLibraryUsage="FALSE"
2385 CharacterSet="2"
2387 <Tool
2388 Name="VCCustomBuildTool"
2390 <Tool
2391 Name="VCMIDLTool"
2393 <Tool
2394 Name="VCPostBuildEventTool"
2396 <Tool
2397 Name="VCPreBuildEventTool"
2399 </Configuration>
2400 <Configuration
2401 Name="Release|Win32"
2402 OutputDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
2403 IntermediateDirectory="..\..\..\..\..\..\compile\win32\$(ProjectName)\$(ConfigurationName)"
2404 ConfigurationType="10"
2405 UseOfMFC="0"
2406 ATLMinimizesCRunTimeLibraryUsage="FALSE"
2407 CharacterSet="2"
2409 <Tool
2410 Name="VCCustomBuildTool"
2412 <Tool
2413 Name="VCMIDLTool"
2415 <Tool
2416 Name="VCPostBuildEventTool"
2418 <Tool
2419 Name="VCPreBuildEventTool"
2421 </Configuration>
2422 </Configurations>
2423 <References>
2424 </References>
2425 <Files>
2426 <Filter
2427 Name="Source Files"
2428 Filter="cpp;c;rc"
2430 %%sources%%
2431 </Filter>
2432 <Filter
2433 Name="Header Files"
2434 Filter="def;h;hpp;inl"
2436 %%headers%%
2437 </Filter>
2438 %%template%%
2439 %%resource%%
2440 </Files>
2441 <Globals>
2442 </Globals>
2443 </VisualStudioProject>
2446 $template_resource = q@
2447 <Filter
2448 Name="Resource Files"
2449 Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
2451 %%resources%%
2452 </Filter>
2455 $template_template = q@
2456 <Filter
2457 Name="Template Files"
2458 Filter="template"
2460 %%templates%%
2461 </Filter>
2464 $mocHeader = q@
2465 <FileConfiguration
2466 Name="Debug|Win32"
2468 <Tool
2469 Name="VCCustomBuildTool"
2470 Description="moc $(InputName)"
2471 CommandLine="..\..\..\..\..\..\external\3rd\library\qt\%%qt_version%%\bin\moc -i $(InputPath) -o $(TargetDir)$(InputName).moc"
2472 Outputs="$(TargetDir)$(InputName).moc"
2474 </FileConfiguration>
2475 <FileConfiguration
2476 Name="Optimized|Win32"
2478 <Tool
2479 Name="VCCustomBuildTool"
2480 Description="moc $(InputName)"
2481 CommandLine="..\..\..\..\..\..\external\3rd\library\qt\%%qt_version%%\bin\moc -i $(InputPath) -o $(TargetDir)$(InputName).moc"
2482 Outputs="$(TargetDir)$(InputName).moc"
2484 </FileConfiguration>
2485 <FileConfiguration
2486 Name="Release|Win32"
2488 <Tool
2489 Name="VCCustomBuildTool"
2490 Description="moc $(InputName)"
2491 CommandLine="..\..\..\..\..\..\external\3rd\library\qt\%%qt_version%%\bin\moc -i $(InputPath) -o $(TargetDir)$(InputName).moc"
2492 Outputs="$(TargetDir)$(InputName).moc"
2494 </FileConfiguration>
2497 $excludeFromBuild = q@
2498 <FileConfiguration
2499 Name="Debug|Win32"
2500 ExcludedFromBuild="TRUE"
2502 <Tool
2503 Name="VCCustomBuildTool"
2505 </FileConfiguration>
2506 <FileConfiguration
2507 Name="Optimized|Win32"
2508 ExcludedFromBuild="TRUE"
2510 <Tool
2511 Name="VCCustomBuildTool"
2513 </FileConfiguration>
2514 <FileConfiguration
2515 Name="Release|Win32"
2516 ExcludedFromBuild="TRUE"
2518 <Tool
2519 Name="VCCustomBuildTool"
2521 </FileConfiguration>
2524 $createPrecompiledHeader = q@
2525 <FileConfiguration
2526 Name="Debug|Win32"
2528 <Tool
2529 Name="VCCLCompilerTool"
2530 UsePrecompiledHeader="1"
2532 </FileConfiguration>
2533 <FileConfiguration
2534 Name="Optimized|Win32"
2536 <Tool
2537 Name="VCCLCompilerTool"
2538 UsePrecompiledHeader="1"
2540 </FileConfiguration>
2541 <FileConfiguration
2542 Name="Release|Win32"
2544 <Tool
2545 Name="VCCLCompilerTool"
2546 UsePrecompiledHeader="1"
2548 </FileConfiguration>
2551 # ---------------------------------------------------------------------