diff options
Diffstat (limited to 'Tools/Scripts/pdevenv')
-rwxr-xr-x | Tools/Scripts/pdevenv | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/Tools/Scripts/pdevenv b/Tools/Scripts/pdevenv new file mode 100755 index 0000000..4643728 --- /dev/null +++ b/Tools/Scripts/pdevenv @@ -0,0 +1,45 @@ +#!/usr/bin/perl -w + +use strict; +use warnings; + +use File::Temp qw/tempfile/; +use FindBin; + +use lib $FindBin::Bin; +use webkitdirs; + +my ($fh, $path) = tempfile(UNLINK => 0, SUFFIX => '.cmd') or die; + +chomp(my $vcBin = `cygpath -w "$FindBin::Bin/../vcbin"`); +chomp(my $scriptsPath = `cygpath -w "$FindBin::Bin"`); + +my $vsToolsVar; +if ($ENV{'VS80COMNTOOLS'}) { + $vsToolsVar = "VS80COMNTOOLS"; +} elsif ($ENV{'VS90COMNTOOLS'}) { + $vsToolsVar = "VS90COMNTOOLS"; +} else { + print "*************************************************************\n"; + print "Cannot find Visual Studio tools dir.\n"; + print "Please ensure that \$VS80COMNTOOLS or \$VS90COMNTOOLS\n"; + print "is set to a valid location.\n"; + print "*************************************************************\n"; + die; +} + +print $fh "\@echo off\n\n"; +print $fh "call \"\%" . $vsToolsVar . "\%\\vsvars32.bat\"\n\n"; +print $fh "set PATH=$vcBin;$scriptsPath;\%PATH\%\n\n"; + +print $fh "IF EXIST \"\%VSINSTALLDIR\%\\Common7\\IDE\\devenv.com\" (devenv.com /useenv " . join(" ", @ARGV) . ") ELSE "; +print $fh "VCExpress.exe /useenv " . join(" ", @ARGV) . "\n"; + + +close $fh; + +chmod 0755, $path; + +chomp($path = `cygpath -w -s '$path'`); + +exec("cmd /c \"call $path\""); |