Source

xemacsweb / Makefile

Full commit
adriana 61e9e52 
adriana e5371d0 
adriana 41e5984 

adriana 6f0c3cf 
scop 0f1cd4e 
adriana 6f0c3cf 




adriana 41e5984 
adriana 1b05876 
adriana 41e5984 
adriana e5371d0 
adriana 0738198 
adriana e1eaa9a 
adriana 8e3cd24 

adriana e1eaa9a 
yaseppochi 99dcd0c 
adrian c755d26 
adriana 40e33b3 

adrian c755d26 









adriana 124861e 
adrian c755d26 
adriana 03b1b09 
adriana 6f0c3cf 

adriana e1eaa9a 
adriana 3871022 


adriana e1eaa9a 
adriana 0738198 
adriana 6f0c3cf 
adrian d9541ff 

adriana 6f0c3cf 



rendhalver 0eb1658 









rendhalver d652e12 


rendhalver 0eb1658 
adriana 0738198 


adriana 00f8a58 
adriana 41e5984 
rendhalver 0eb1658 
adriana 00f8a58 
adriana 604c739 
adriana 00f8a58 
adrian 92138df 
adrian 10154ec 
adrian c755d26 




adrian 10154ec 
adrian c755d26 
adrian 10154ec 

adriana 604c739 




adrian 10154ec 
adrian c755d26 





adrian 10154ec 



adriana 1b05876 
adriana 8e3cd24 


adriana 3871022 
oishi 884e699 
adriana 8e3cd24 
adriana 604c739 
adriana 8e3cd24 
adriana e9c8d24 

adriana 1b05876 



adriana e9c8d24 


adriana 61e9e52 
adrian 8d86a80 
adrian 03a08c8 


rendhalver 0eb1658 
adrian 03a08c8 
rendhalver 0eb1658 




adriana 61e9e52 


adriana e1eaa9a 
adriana 604c739 
adriana 61e9e52 

adrian 92138df 
adrian a109b93 
adrian c755d26 

adrian 92138df 
# -*-Makefile-*- Begin of xemacsweb Makefile
#
# Adrian Aichner (APA), aichner@ecf.teradyne.com, Teradyne GmbH, 2000-07-29.
#
# xemacsweb makefile for UNIX and Windows NT,
# requiring GNU make, available on Windows NT via Cygwin
#
# Please adjust definitions of CONTENT_FILES and HTML_FILES for other
# versions of make.
#
# Supported targets:
# htdocs (default): creation of .html from .content files
# validate: validation of all .html files using XEmacs/PSGML
# all: creation and validation
#

.SUFFIXES:			# Delete the default suffixes
.SUFFIXES: .content .html .el .elc # Define our suffix list

# APA: This is what I use on my Windows 2000 machine:
XEMACS=xemacs
# XEMACS="//c/Program Files/XEmacs/XEmacs-21.1.14/i386-pc-win32/xemacs.exe"
# FLAGS=-batch -q -no-site-file
FLAGS=-batch -vanilla

# APA: Windows has its own, inadequate find, use Cygwin instead!
FIND=find
# FIND="//c/cygwin/bin/find.exe"

# APA: Where to find and how to run linklint.
LINKLINT=linklint
# LINKLINT=perl linklint-2.3.3
LINKLINT_OUTDIR=linklint

GENPAGE_CONF="genpage.conf"

ELCS=batch-psgml-validate.elc release-mail-to-html.elc

# APA: Use these definitions for GNU make
CONTENT_FILES=$(shell $(FIND) . -name "*.content" -print)
# APA: We may need GENERATED_HTML_FILES later.  This syntax should
# work with GNU- and Sun-make.
# GENERATED_HTML_FILES=$(CONTENT_FILES:.content=.html)
HTML_FILES=$(shell $(FIND) . -name "*.html" -print)

# APA: Use these definitions for SUN make
# CONTENT_FILES:sh=find . -name "*.content" -print
# HTML_FILES:sh=find . -name "*.html" -print

# Please add alternative definitions for CONTENT_FILES and HTML_FILES
# if neither of the above work on your system.

# PB: setup vars for namazu reindex
# location of namazu.cgi
# used for testing if this system has namazu installed
NAMAZU_CGI=~/cgi-bin/namazu.cgi
# mknmz command
# used to reindex the site for namazu
MKNMZ=mknmz
# location of namazu index files
NAMAZU_INDEX_DIR=~/var/namazu/index
# website directory
# need to make this more generic
# ${PWD} doesnt seem to get set on www.xemacs.org
XEMACS_WEB_DIR=~/xemacsweb

# APA: Compile any lisp file for performance (a bit simple-minded, maybe).
%.elc: %.el
	$(XEMACS) $(FLAGS) -f batch-byte-compile $<

# APA: Default target (first to occur in file):
htdocs: $(ELCS) htdocs-time-stamp namazu-re-index

validate: htdocs validate-time-stamp

all: Download/win32 validate

# APA: Run linklint on the local working directory tree, including
# remote link checking (-net).
linklint: FORCE
	$(LINKLINT) -net -limit 0 -db3 /@ -doc $(LINKLINT_OUTDIR)

# APA: To be run after initial checkout of module.
# Create directory for commit logs.
# Create compatibility link faq.
# configure and build Texi2html.
# APA: Build the genpage documentation.  Maintain a timestamp to avoid
# needless re-generation of genpage release documentation.
# APA: The genpage/content/index.content is not the only dependency,
# but any improvements should go into the genpage/Makefile itself and
# be integrated with a genpage release.
init:
	if test ! -d logs; then \
	      mkdir logs; \
	fi;
	if test ! -d $(LINKLINT_OUTDIR); then \
	      mkdir $(LINKLINT_OUTDIR); \
	fi;
	ln -s FAQ faq
	cd genpage; $(MAKE) gp
	cd Texi2html; bash configure; make
	cd FAQ; $(MAKE)

# APA: When contentdir and outputdir are the same then, and only then,
# genpage depends only on content files.  Copying of all other files
# (from contentdir to outputdir) is not necessary in this case.
# See $(GENPAGE_CONF).
htdocs-time-stamp: $(CONTENT_FILES) template.html template-de.html template-ja.html
	perl ./genpage/bin/genpage -p $(GENPAGE_CONF) -o "."
	touch htdocs-time-stamp

# APA: Validate only files younger than time-stamp file created by
# previous validation
# See batch-psgml-validate.el for details, in particular ...
# (defun batch-psgml-validate (&optional file-or-dir)
# (defun batch-psgml-validate-file (file &optional insert-result indent)
# (defun batch-psgml-validate-buffer (&optional insert-result indent)
validate-time-stamp: $(HTML_FILES)
	$(XEMACS) $(FLAGS) -l ./batch-psgml-validate.elc -f batch-psgml-validate $?
	touch validate-time-stamp

# PB: target for rebuilding the namazu index
# APA: Touch index.html for index template files to be re-generated.
# www.xemacs.org has a patched mknmz that will update index files,
# unless they are newer than the associated template.
namazu-re-index: FORCE
	touch index.html
	if test -f ${NAMAZU_CGI}; then \
		cd ${NAMAZU_INDEX_DIR}; \
		${MKNMZ} ${XEMACS_WEB_DIR}; \
	fi;

# APA: Remove all .html files (and backups) generated from .content
# files.  Need to remove timestamp files as well!
clean:
	$(FIND) . \( -name "*.content" -o -name "*~" \) -print | perl -ne "{ chomp; s/\.content/.html/; unlink; }"
	rm htdocs-time-stamp
	rm validate-time-stamp

Download/win32: FORCE
	cd $@ && $(MAKE)

FORCE:

# End of xemacsweb Makefile