diff options
Diffstat (limited to 'www/Makefile')
-rw-r--r-- | www/Makefile | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/www/Makefile b/www/Makefile new file mode 100644 index 00000000..681e3067 --- /dev/null +++ b/www/Makefile @@ -0,0 +1,44 @@ +# Copyright (C) 2017 Michael Reed <michael@michaelreed.io> +# +# This program 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. +# +# This program 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 this program. If not, see <http://www.gnu.org/licenses/>. + +MD_MAIN != find -L . -name '*.md' -and ! -path '*/news/*' +HTML_MAIN = $(MD_MAIN:.md=.html) + +MD_NEWS != find -L news -name '*.md' -and ! -name index.md +HTML_NEWS = $(MD_NEWS:.md=.html) + + +# news/index.html implies the building of $(HTML_NEWS). +all: $(HTML_MAIN) news/index.html + +.SUFFIXES: .md .html +# Does not apply for news/index.md; see below. +.md.html: + ./publish.sh $< + +# Unlike all the other markdown files, news/index.md does not exist at first: +# it must be generated by index.sh. Also note that index.sh depends on the +# existence of the HTML version of all news items, hence the dependency line +# below. +news/index.md: $(HTML_NEWS) + ./index.sh + +clean: + rm -f $(HTML_MAIN) $(HTML_MAIN:.html=.bare.html) \ + $(HTML_NEWS) $(HTML_NEWS:.html=.bare.html) \ + news/index.md news/index.html news/index.bare.html \ + feed.xml news/feed.xml + +.PHONY: clean |