1 HTML_FILES = $(shell echo *.shtml)
2 EMPTY_DIRS = doc source
3 DEEP_EMPYT_DIRS = doc/exam doc/hwk doc/lab doc/lec doc/rec doc/note
4 HTML_DIRS = shared php xml $(EMPTY_DIRS) $(DEEP_EMPTY_DIRS)
5 SOURCE_FILES = $(HTML_FILES) $(HTML_DIRS) README .htaccess
7 DIST_FILES = $(SOURCE_FILES) $(OTHER_FILES)
8 DIST_FILE = website_framework.tar.gz
12 rm -rf $(DIST_FILE) $(DIST_DIR) install*
14 $(DIST_FILE) : $(DIST_FILES) $(EMPTY_DIRS)
17 tar -cozf $@ $(DIST_DIR)
20 install : install-html install-source
22 # Create a new directory for the installation
24 ssh $(INSTALL_USER)@$(INSTALL_HOST) mkdir $(INSTALL_DIR)
27 # Avoid the install-dir step, but allow installation to continue
31 # The transform removes the preceeding DIST_DIR (e.g. `html/')
32 install-html : $(DIST_FILE) install-dir
33 cat $< | ssh $(INSTALL_USER)@$(INSTALL_HOST) \
34 tar --transform="s,$(DIST_DIR),.," -xzvC $(INSTALL_DIR)
35 ssh $(INSTALL_USER)@$(INSTALL_HOST) \
36 cd $(INSTALL_DIR) '&&' rm -rf $(OTHER_FILES) $(DIST_DIR)
39 install-source : $(DIST_FILE) install-html
40 scp -p $(DIST_FILE) $(INSTALL_USER)@$(INSTALL_HOST):$(SOURCE_DIR)
43 # Create empty directories if neccessary (Git doesn't track dirs)