$LOAD_PATH.unshift File.join(File.dirname(__FILE__), '..', 'lib') require 'fileutils' require 'ffi' require 'ffi/platform' require 'ffi/tools/types_generator' types_conf = File.expand_path(File.join(FFI::Platform::CONF_DIR, 'types.conf')) logfile = File.join(File.dirname(__FILE__), 'log') file types_conf do |task| options = {} FileUtils.mkdir_p(File.dirname(task.name), mode: 0755) File.open(task.name, File::CREAT|File::TRUNC|File::RDWR, 0644) do |f| f.puts FFI::TypesGenerator.generate(options) end File.open(logfile, 'w') do |log| log.puts(types_conf) end end task :default => types_conf do end task :clean do File.readlines(logfile).each do |file| file.strip! rm_f file end rm_f logfile end