diff --git a/doc/Makefile b/doc/Makefile index 467da6844..b11e93d55 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -1,118 +1,126 @@ # Makefile for LAMMPS documentation SHELL = /bin/bash SHA1 = $(shell echo $USER-$PWD | python utils/sha1sum.py) BUILDDIR = /tmp/lammps-docs-$(SHA1) RSTDIR = $(BUILDDIR)/rst VENV = $(BUILDDIR)/docenv TXT2RST = $(VENV)/bin/txt2rst PYTHON = $(shell which python3) ifeq ($(shell which python3 >/dev/null 2>&1; echo $$?), 1) $(error Python3 was not found! Please check README.md for further instructions) endif ifeq ($(shell which virtualenv >/dev/null 2>&1; echo $$?), 1) $(error virtualenv was not found! Please check README.md for further instructions) endif SOURCES=$(wildcard src/*.txt) OBJECTS=$(SOURCES:src/%.txt=$(RSTDIR)/%.rst) .PHONY: help clean-all clean html pdf old venv # ------------------------------------------ help: @echo "Please use \`make ' where is one of" @echo " html create HTML doc pages in html dir" @echo " pdf create Manual.pdf and Developer.pdf in this dir" @echo " old create old-style HTML doc pages in old dir" @echo " fetch fetch HTML and PDF files from LAMMPS web site" @echo " clean remove all intermediate RST files" @echo " clean-all reset the entire build environment" @echo " txt2html build txt2html tool" # ------------------------------------------ clean-all: rm -rf $(BUILDDIR)/* utils/txt2html/txt2html.exe clean: rm -rf $(RSTDIR) html: $(OBJECTS) @(\ . $(VENV)/bin/activate ;\ cp -r src/* $(RSTDIR)/ ;\ sphinx-build -j 8 -b html -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) html ;\ deactivate ;\ ) -rm html/searchindex.js - -rm -rf html/_sources + @rm -rf html/_sources + @rm -rf html/PDF + @rm -rf html/USER + @cp -r src/PDF html/PDF + @cp -r src/USER html/USER + @rm -rf html/PDF/.[sg]* + @rm -rf html/USER/.[sg]* + @rm -rf html/USER/*/.[sg]* + @rm -rf html/USER/*/*.[sg]* @echo "Build finished. The HTML pages are in doc/html." pdf: utils/txt2html/txt2html.exe @(\ cd src; \ ../utils/txt2html/txt2html.exe -b *.txt; \ htmldoc --batch lammps.book; \ for s in `echo *.txt | sed -e 's,\.txt,\.html,g'` ; \ do grep -q $$s lammps.book || \ echo doc file $$s missing in src/lammps.book; done; \ rm *.html; \ cd Developer; \ pdflatex developer; \ pdflatex developer; \ mv developer.pdf ../../Developer.pdf; \ ) old: utils/txt2html/txt2html.exe @rm -rf old @mkdir old; mkdir old/Eqs; mkdir old/JPG; mkdir old/PDF @cd src; ../utils/txt2html/txt2html.exe -b *.txt; \ mv *.html ../old; \ cp Eqs/*.jpg ../old/Eqs; \ cp JPG/* ../old/JPG; \ cp PDF/* ../old/PDF; fetch: @rm -rf html_www Manual_www.pdf Developer_www.pdf @curl -s -o Manual_www.pdf http://lammps.sandia.gov/doc/Manual.pdf @curl -s -o Developer_www.pdf http://lammps.sandia.gov/doc/Developer.pdf # @curl -s -o lammps-doc.tar.gz http://lammps.sandia.gov/tars/lammps-doc.tar.gz # @tar xzf lammps-doc.tar.gz # @rm -f lammps-doc.tar.gz txt2html: utils/txt2html/txt2html.exe # ------------------------------------------ utils/txt2html/txt2html.exe: utils/txt2html/txt2html.cpp g++ -O -Wall -o $@ $< $(RSTDIR)/%.rst : src/%.txt $(TXT2RST) @(\ mkdir -p $(RSTDIR) ; \ . $(VENV)/bin/activate ;\ txt2rst $< > $@ ;\ deactivate ;\ ) $(VENV): @( \ virtualenv -p $(PYTHON) $(VENV); \ . $(VENV)/bin/activate; \ pip install Sphinx; \ pip install sphinxcontrib-images; \ deactivate;\ ) $(TXT2RST): $(VENV) @( \ . $(VENV)/bin/activate; \ (cd utils/converters;\ python setup.py develop);\ deactivate;\ )