teardrop stage added on versioned layout
This commit is contained in:
parent
eed3833b2f
commit
a205bf6418
25
pcb/Rakefile
25
pcb/Rakefile
|
@ -63,16 +63,15 @@ task :verify => vsch do |t|
|
||||||
puts "not all refdes numbered" unless numbered
|
puts "not all refdes numbered" unless numbered
|
||||||
end
|
end
|
||||||
|
|
||||||
|
PHOTOS = ["#{target}_layout-top.png","#{target}_layout-bottom.png"]
|
||||||
desc "render layout"
|
desc "render layout"
|
||||||
task :photo => ["#{target}_layout-top.png","#{target}_layout-bottom.png"]
|
task :photo => PHOTOS
|
||||||
CLOBBER.include("#{target}_layout-top.png")
|
CLOBBER.include(PHOTOS)
|
||||||
CLOBBER.include("#{target}_layout-bottom.png")
|
|
||||||
|
|
||||||
|
GERBERS = [".top.gbr",".topmask.gbr",".toppaste.gbr",".topsilk.gbr",".bottom.gbr",".bottommask.gbr",".bottompaste.gbr",".bottomsilk.gbr",".outline.gbr",".fab.gbr",".plated-drill.cnc",".unplated-drill.cnc"].collect{|suffix| target+suffix}
|
||||||
desc "export gerber"
|
desc "export gerber"
|
||||||
task :gerber => vpcb do |t|
|
task :gerber => GERBERS
|
||||||
sh "pcb -x gerber --gerberfile #{target} --all-layers #{t.prerequisites.join(' ')}"
|
CLOBBER.include(GERBERS)
|
||||||
end
|
|
||||||
CLOBBER.include([".top.gbr",".topmask.gbr",".toppaste.gbr",".topsilk.gbr",".bottom.gbr",".bottommask.gbr",".bottompaste.gbr",".bottomsilk.gbr",".outline.gbr",".fab.gbr",".plated-drill.cnc",".unplated-drill.cnc"].collect{|suffix| target+suffix})
|
|
||||||
|
|
||||||
|
|
||||||
# ================
|
# ================
|
||||||
|
@ -131,6 +130,7 @@ file vsch => sch do |t|
|
||||||
sh "sed -i 's/\\(revision=\\)\\$Revision\\$/\\1#{sch_rev}/' #{t.name}"
|
sh "sed -i 's/\\(revision=\\)\\$Revision\\$/\\1#{sch_rev}/' #{t.name}"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
desc "copy layout to version it: include version, date, and run teardrops when available"
|
||||||
file vpcb => pcb do |t|
|
file vpcb => pcb do |t|
|
||||||
sh "cp #{t.prerequisites.join(' ')} #{t.name}"
|
sh "cp #{t.prerequisites.join(' ')} #{t.name}"
|
||||||
# on \ is to prevent ruby interpreting it, th other is for sed
|
# on \ is to prevent ruby interpreting it, th other is for sed
|
||||||
|
@ -139,6 +139,10 @@ file vpcb => pcb do |t|
|
||||||
sh "sed -i 's/\\$version\\$/#{version_revision}/' #{t.name}"
|
sh "sed -i 's/\\$version\\$/#{version_revision}/' #{t.name}"
|
||||||
# the date
|
# the date
|
||||||
sh "sed -i 's/\\$date\\$/#{date}/' #{t.name}"
|
sh "sed -i 's/\\$date\\$/#{date}/' #{t.name}"
|
||||||
|
# run teardrop for vias and pins
|
||||||
|
if File.exist? "#{Dir.home}/.pcb/plugins/teardrops.so" then
|
||||||
|
sh "pcb --action-string \"djopt(splitlines) Teardrops() s() q()\" #{t.name}"
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
file "#{target}_schematic.pdf" => vsch do |t|
|
file "#{target}_schematic.pdf" => vsch do |t|
|
||||||
|
@ -168,3 +172,10 @@ end
|
||||||
file "#{target}_layout-bottom.png" => vpcb do |t|
|
file "#{target}_layout-bottom.png" => vpcb do |t|
|
||||||
sh "pcb -x png --dpi 600 --format PNG --photo-mode --photo-flip-x --outfile #{target}_layout-bottom.png #{t.prerequisites.join(' ')}"
|
sh "pcb -x png --dpi 600 --format PNG --photo-mode --photo-flip-x --outfile #{target}_layout-bottom.png #{t.prerequisites.join(' ')}"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
GERBERS.each do |gerber|
|
||||||
|
file gerber => vpcb do |t|
|
||||||
|
puts "make #{t.name}"
|
||||||
|
sh "pcb -x gerber --gerberfile #{target} --all-layers #{t.prerequisites.join(' ')}"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
Loading…
Reference in New Issue