Sha256: f2bee0cfd7c8f1ab8871c6e406c3f2c34f038fc681001d1426ef325864acb4b6
Contents?: true
Size: 1.36 KB
Versions: 91
Compression:
Stored size: 1.36 KB
Contents
require_relative('./dependencies.rb') class Artifacts < Array def initialize # gem, dev_tasks-0.0.7.gem Dir.glob('*.gemspec') {|f| spec=Gem::Specification.load(f) artifact="#{spec.name}-#{spec.version.to_s}.gem" self << artifact if(!self.include?(artifact)) } # C# dll, bin/Net4.0/QcNet.dll Dir.glob("*.csproj").each{|p| text = File.read(p) # extract AssemblyName of form: <AssemblyName>MyLibrary.Test</AssemblyName> assemblyName=text[/<AssemblyName>([\w\.]+)</,1] outputType=text[/<OutputType>([\w\.]+)</,1] outputPath=text[/Release[.\w\W]+<OutputPath>([\w\.\\]+)</,1] if(!assemblyName.nil? && !outputPath.nil? && !assemblyName.include?("Test")) extension="dll" extension="exe" if(outputType=="WinExe" || outputType=="Exe") artifact = "#{outputPath}\\#{assemblyName}.#{extension}".gsub("\\\\","\\").gsub('/','\\').gsub('\\','/') self << artifact if(!self.include?(artifact)) # add in file dependencies Dependencies.csharp_file_dependencies(text).each{|dep| cs_dll_dep=dep.gsub(File.dirname(dep),File.dirname(artifact)).gsub('\\','/') self << cs_dll_dep if(!self.include?(cs_dll_dep)) } end } update end def update # C++ dll,lib,h,hpp if(Dir.glob("**/*.{vcproj,vcxproj}").length > 0) Dir.glob("**/*.{lib,dll,h,hpp}").each{|f| self << f } end end end
Version data entries
91 entries across 91 versions & 1 rubygems