From 348e16e264869aee29c36f6b25a48b81b871169d Mon Sep 17 00:00:00 2001 From: David Thompson Date: Sun, 26 Jul 2015 23:09:43 -0400 Subject: builder: Add assets builder. * haunt/builder/assets.scm: New file. * Makefile.am (SOURCES): Add it. --- Makefile.am | 1 + haunt/builder/assets.scm | 39 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 haunt/builder/assets.scm diff --git a/Makefile.am b/Makefile.am index e44e91a..1d1bb01 100644 --- a/Makefile.am +++ b/Makefile.am @@ -48,6 +48,7 @@ SOURCES = \ haunt/asset.scm \ haunt/site.scm \ haunt/html.scm \ + haunt/builder/assets.scm \ haunt/builder/atom.scm \ haunt/builder/blog.scm \ haunt/ui.scm \ diff --git a/haunt/builder/assets.scm b/haunt/builder/assets.scm new file mode 100644 index 0000000..1f7424b --- /dev/null +++ b/haunt/builder/assets.scm @@ -0,0 +1,39 @@ +;;; Haunt --- Static site generator for GNU Guile +;;; Copyright © 2015 David Thompson +;;; +;;; This file is part of Haunt. +;;; +;;; Haunt is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or +;;; (at your option) any later version. +;;; +;;; Haunt is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;;; General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with Haunt. If not, see . + +;;; Commentary: +;; +;; Static asset builder. +;; +;;; Code: + +(define-module (haunt builder assets) + #:use-module (srfi srfi-1) + #:use-module (srfi srfi-9) + #:use-module (ice-9 ftw) + #:use-module (ice-9 match) + #:use-module (haunt asset) + #:export (static-directory)) + +(define* (static-directory directory #:optional (dest directory)) + "Return a builder procedure that recursively copies all of the files +in DIRECTORY, a file names relative to a site's source directory, and +copies them into DEST, a prefix relative to a site's target output +directory. By default, DEST is DIRECTORY." + (lambda _ + (directory-assets directory dest))) -- cgit v1.2.3