diff --git a/hardware/Rakefile b/hardware/Rakefile index 663c2c4..621b8e5 100644 --- a/hardware/Rakefile +++ b/hardware/Rakefile @@ -38,8 +38,7 @@ end # ========== desc "main building task" -#task :default => [:version,:print,:notes,:photo,:gerber] -task :default => [:version,:print,:notes,:photo] +task :default => [:version,:print,:notes,:photo,:gerber] desc "create release file" release = "hardware-release_v#{version}.tar.gz" @@ -95,12 +94,13 @@ desc "render layout" task :photo => photos CLOBBER.include(photos) -=begin -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" -task :gerber => GERBERS -CLOBBER.include(GERBERS) +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"] +gerbers = targets.collect{|target| GERBERS.collect{|suffix| target[:name]+suffix}}.flatten +task :gerber => gerbers +CLOBBER.include(gerbers) +=begin desc "reformat gerber and drill output (some programs like LPKF CircuitPro have difficulties with gEDA pcb output)" task :reformat => GERBERS do GERBERS.each do |gerber| @@ -232,15 +232,16 @@ targets.each do |target| end end -=begin desc "export gerber (and drill) files from layout" -GERBERS.each do |gerber| - file gerber => vpcb do |t| - puts "make #{t.name}" - sh "pcb -x gerber --gerberfile #{target} --all-layers #{t.prerequisites.join(' ')}" +targets.each do |target| + GERBERS.each do |suffix| + file target[:name]+suffix => target[:vpcb] do |t| + sh "pcb -x gerber --gerberfile #{target[:name]} --all-layers #{t.prerequisites.join(' ')}" + end end end +=begin ATTACHMENTS = ["cern_ohl_v_1_2_howto.pdf","CHANGES.txt","LICENSE.txt","PRODUCT.txt"] desc "create archive with release files" file "hardware-release_v#{version}.tar.gz" => ATTACHMENTS+["lib",vsch,vpcb,"notes.txt","#{target}_schematic.pdf","#{target}_layout.pdf","#{target}_layout-top.png","#{target}_layout-bottom.png"]+GERBERS do |t|