Sha256: 99c46b241644118697a66e9f6bc814dcea15ea7c3210166b404a8edbe19dbfd2

Contents?: true

Size: 1.67 KB

Versions: 53

Compression:

Stored size: 1.67 KB

Contents

# Visual Studio 2008 version 9.0,  solution format version 10.00
# Visual Studio 2010 version 10.0, solution format version 11.00
# Visual Studio 2012 version 11.0, solution format version 12.00
# Visual Studio 2013 version 12.0, solution format version 12.00
class MSBuild < Hash

  def initialize
    self[:vs9]="C:\\Windows\\Microsoft.NET\\Framework\\v3.5\\msbuild.exe"  if(File.exists?("C:\\Windows\\Microsoft.NET\\Framework\\v3.5\\msbuild.exe"))
    self[:vs12]="C:\\Program Files (x86)\\MSBuild\\12.0\\bin\\msbuild.exe" if(File.exists?("C:\\Program Files (x86)\\MSBuild\\12.0\\bin\\msbuild.exe"))
  end
  
  def self.has_version? version
    if(defined?(MSBUILD))
      MSBUILD.has_key?(version)
    else
      msb=MSBuild.new
      return msb.has_key? version
    end
  end

  def self.get_version version
    if(defined?(MSBUILD))
      MSBUILD[version]
    else
      msb=MSBuild.new
      return msb[version]
    end
  end

	def self.get_vs_version(sln_filename)
   		sln_text=File.read(sln_filename,:encoding=>'UTF-8')
    	return :vs9 if sln_text.include?('Format Version 10.00')
    	return :vs12
  	end

  	def self.get_configurations(sln_filename)
    	configs=Array.new
	  	sln_text=File.read(sln_filename,:encoding=>'UTF-8')
    	sln_text.scan( /= ([\w]+)\|/ ).each{|m|
	  	c=m.first.to_s
	  	configs << c if !configs.include?(c)
		}
		return configs
  	end

  	def self.get_platforms(sln_filename)
    	platforms=Array.new
	  	sln_text=File.read(sln_filename,:encoding=>"UTF-8")
    	sln_text.scan( /= [\w]+\|([\w ]+)/ ).each{|m|
	    	p=m.first.to_s
	    	platforms << p if !platforms.include?(p)
	  	}
		return platforms
  	end
end

Version data entries

53 entries across 53 versions & 2 rubygems

Version Path
dev-2.0.119 lib/commands/msbuild.rb
dev-2.0.118 lib/commands/msbuild.rb
dev-2.0.117 lib/commands/msbuild.rb
dev-2.0.116 lib/commands/msbuild.rb
dev-2.0.115 lib/commands/msbuild.rb
dev-2.0.114 lib/commands/msbuild.rb
dev-2.0.113 lib/commands/msbuild.rb
dev-2.0.112 lib/commands/msbuild.rb
dev-2.0.111 lib/commands/msbuild.rb
dev-2.0.110 lib/commands/msbuild.rb
dev-2.0.109 lib/commands/msbuild.rb
dev-2.0.108 lib/commands/msbuild.rb
dev-2.0.107 lib/commands/msbuild.rb
dev-2.0.106 lib/commands/msbuild.rb
dev-2.0.105 lib/commands/msbuild.rb
dev-2.0.104 lib/commands/msbuild.rb
dev-2.0.103 lib/commands/msbuild.rb
dev-2.0.102 lib/commands/msbuild.rb
dev-2.0.101 lib/commands/msbuild.rb
dev-2.0.100 lib/commands/msbuild.rb