GHC = ghc
GHCFLAGS = -package xhtml -package cgi -package haskelldb
LDFLAGS = #-static -optl-static
HTML_DIR = ~/public_html
CGI_DIR = $(HTML_DIR)/cgi-bin
HALBUM_DIR = $(HTML_DIR)/halbum
SCRIPTS = multifileform.js suggest.js
STYLESHEETS = halbum.css suggest.css
.PHONY: view admin cleandb
all: createdb view admin
install: all
strip halbum.cgi
cp halbum.cgi $(CGI_DIR)
chmod 755 $(CGI_DIR)/halbum.cgi
strip halbumadmin.cgi
cp halbumadmin.cgi $(CGI_DIR)
chmod 755 $(CGI_DIR)/halbumadmin.cgi
# cp $(SCRIPTS) $(HALBUM_DIR)
# cp $(STYLESHEETS) $(HALBUM_DIR)
cp htaccess $(HALBUM_DIR)/.htaccess
view:
$(GHC) $(GHCFLAGS) --make -o halbum.cgi halbum.hs $(LDFLAGS)
admin: GHCFLAGS += -package exif -package gd -package parsedate
admin:
$(GHC) $(GHCFLAGS) --make -o halbumadmin.cgi halbumadmin.hs $(LDFLAGS)
db:
-rm -f halbum.db
./createdb
cp halbum.db $(HALBUM_DIR)
chmod 666 $(HALBUM_DIR)/halbum.db
createdb: createdb.hs DBConnect.hs
$(GHC) $(GHCFLAGS) --make -o $@ $< $(LDFLAGS)
clean:
-rm -f *.hi *.o *.cgi HalbumDB/*.{hi,o} createdb