From 9e7073dbd24315b87b4acdf13888f48f9ec43524 Mon Sep 17 00:00:00 2001 From: Kevin Redon Date: Wed, 26 Mar 2014 16:08:13 +0100 Subject: [PATCH] better gerber export handling --- hardware/Rakefile | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/hardware/Rakefile b/hardware/Rakefile index 3330d23..3cee38c 100644 --- a/hardware/Rakefile +++ b/hardware/Rakefile @@ -97,9 +97,15 @@ task :photo => photos CLOBBER.include(photos) desc "export gerber" -task :gerber do +task :gerber => :version do targets.each do |target| - sh "pcb -x gerber --gerberfile #{target[:name]} --all-layers #{target[:vpcb]}" + export = true # export only if the gerbers are all older than the layout + Dir.foreach(".") do |file| + next unless file.start_with? target[:name] + next unless file.end_with? ".gbr" or file.end_with? ".cnc" + export &= (File.ctime(target[:vpcb])>File.ctime(file)) + end + sh "pcb -x gerber --gerberfile #{target[:name]} --all-layers #{target[:vpcb]}" if export end end CLOBBER.include("*.gbr")