summaryrefslogtreecommitdiff
path: root/lib/sitegen.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sitegen.rb')
-rw-r--r--lib/sitegen.rb27
1 files changed, 27 insertions, 0 deletions
diff --git a/lib/sitegen.rb b/lib/sitegen.rb
index e69de29..f565d20 100644
--- a/lib/sitegen.rb
+++ b/lib/sitegen.rb
@@ -0,0 +1,27 @@
+# coding: utf-8
+require 'set'
+
+module Sitegen
+ def self.init
+ @set = Set[]
+ @mk = {}
+ end
+ def self.add(page)
+ @set.add(page)
+ end
+ def self.pages
+ @set
+ end
+ def self.want(filename)
+ page = pages.select{|page|page.local_depends.keys.include?(filename)}.first
+ @mk[filename] = page
+ end
+ def self.Makefile()
+ str = ''
+ str += "all: #{@mk.keys.sort.join(' ')}\n"
+ @mk.each do |filename, page|
+ str += "#{filename}: #{page.local_depends[filename].sort.join(' ')}\n"
+ end
+ return str
+ end
+end