#+ # # module # ====== # # génération des manuels ircaam # # FILES # ===== # # /usr/home/fplod/incas/ircaam/ircaam_ws/adm/makefile sur aedon.locean-ipsl.upmc.fr # # TODO # ==== # # ++ amélioration de la page index # # ++ lien avec les guides # # EVOLUTIONS # ========== # # $Id$ # # - fplod 2008-12-05T11:15:37Z aedon.locean-ipsl.upmc.fr (Darwin) # # * creation # # SEE ALSO # ======== # # extract_rst.sh_ # # .. _extract_rst.sh: ../extract_rst.sh.html # #- # PRODUCT = \ ircaam PRODUCTNAME = \ $$(echo $(PRODUCT) | tr [:lower:] [:upper:]) SUBPRODUCT = \ ircaam_ws DIRSRC = \ ../src/ DIRTMP = \ ./ DIRWWW = \ ../doc/ URLPUBLISH = \ http://www.locean-ipsl.upmc.fr/~fplod/$(PRODUCT)/$(SUBPRODUCT)/ LIST_SRCSH = \ $(DIRSRC)/$(PRODUCT)_profile.sh \ $(DIRSRC)/dlogd.sh \ $(DIRSRC)/elogd.sh \ $(DIRSRC)/plogd.sh \ $(DIRSRC)/tlogd.sh LIST_SRCMATLAB = \ $(DIRSRC)/$(PRODUCT)_startup.m .PHONY : \ help \ before \ clean \ htmllinkcheckb \ htmllinkchecka \ spellcheck \ all \ html \ pdf help : @echo "Prepare output directories :" @echo "\$$ make before" @echo "" @echo "Following commands are available to build outputs :" @echo "\$$ make all" @echo " " @echo "Check links before installation : " @echo "\$$ make htmllinkcheckb" @echo " " @echo "Last step = installation" @echo "\$$ make install" @echo " " @echo "Check links after installation : " @echo "\$$ make htmllinkchecka" @echo " " before : @mkdir -p $(DIRWWW)/manuals/html/one/ @mkdir -p $(DIRWWW)/manuals/html/many/ @mkdir -p $(DIRWWW)/manuals/pdf/one/ @mkdir -p $(DIRWWW)/manuals/pdf/many/ install : @install.sh -w $(DIRWWW) -u $(URLPUBLISH) clean : \ cleantmp -@rm -fr $(DIRWWW)/manuals/html/ -@rm -fr $(DIRWWW)/manuals/pdf/ -@rm -fr $(DIRWWW)/src_browser/ cleantmp : -@rm -f $(DIRTMP)/all.xml -@rm -f $(DIRTMP)/*.rst -@rm -f $(DIRTMP)/*.rst[12] -@rm -f $(DIRTMP)/links.rst* -@rm -f $(DIRTMP)/*.tex -@rm -f $(DIRWWW)/manuals/pdf/one/*.aux -@rm -f $(DIRWWW)/manuals/pdf/one/*.log -@rm -f $(DIRWWW)/manuals/pdf/one/*.out -@rm -f $(DIRWWW)/manuals/pdf/many/*.aux -@rm -f $(DIRWWW)/manuals/pdf/many/*.log -@rm -f $(DIRWWW)/manuals/pdf/many/*.out htmllinkcheckb : @linkchecker.sh -d $(DIRWWW)/manuals/html/ htmllinkchecka : @linkchecker.sh -u $(URLPUBLISH) spellcheck : @++aspell --mode=sgml --master=english -c \ $(DIRSRC)/$(PRODUCT).xml all : \ man_html \ man_pdf man_html : \ man_html_one \ man_html_many man_html_one : \ $(DIRWWW)/manuals/html/one/index.html man_html_many : \ $(DIRWWW)/manuals/html/many/index.html \ $(DIRWWW)/manuals/html/many/$(PRODUCT)_profile.sh.html \ $(DIRWWW)/manuals/html/many/dlogd.sh.html \ $(DIRWWW)/manuals/html/many/elogd.sh.html \ $(DIRWWW)/manuals/html/many/plogd.sh.html \ $(DIRWWW)/manuals/html/many/tlogd.sh.html \ $(DIRWWW)/manuals/html/many/$(PRODUCT)_startup.m.html \ man_pdf : \ man_pdf_one \ man_pdf_many man_pdf_one : \ $(DIRWWW)/manuals/pdf/one/$(PRODUCT)_manuals.pdf \ man_pdf_many : \ $(DIRWWW)/manuals/pdf/many/$(PRODUCT)_profile.sh.pdf \ $(DIRWWW)/manuals/pdf/many/dlogd.sh.pdf \ $(DIRWWW)/manuals/pdf/many/elogd.sh.pdf \ $(DIRWWW)/manuals/pdf/many/plogd.sh.pdf \ $(DIRWWW)/manuals/pdf/many/tlogd.sh.pdf \ $(DIRWWW)/manuals/pdf/many/$(PRODUCT)_startup.m.pdf \ $(DIRWWW)/manuals/html/many/index.html : \ $(DIRTMP)/index.rst @rst2html.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRWWW)/manuals/html/one/index.html : \ $(DIRTMP)/$(PRODUCT)_manuals.rst @rst2html.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRWWW)/manuals/pdf/one/$(PRODUCT)_manuals.pdf : \ $(DIRTMP)/$(PRODUCT)_manuals.tex @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/one/ $< $(DIRTMP)/$(PRODUCT)_manuals.tex : \ $(DIRTMP)/$(PRODUCT)_manuals.rst @rst2newlatex.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRTMP)/$(PRODUCT)_manuals.rst : \ $(DIRTMP)/index.rst \ $(DIRTMP)/$(PRODUCT)_profile.sh.rst \ $(DIRTMP)/dlogd.sh.rst \ $(DIRTMP)/elogd.sh.rst \ $(DIRTMP)/plogd.sh.rst \ $(DIRTMP)/tlogd.sh.rst \ $(DIRTMP)/$(PRODUCT)_startup.m.rst @cat $(DIRTMP)/index.rst > ${DIRTMP}/$(PRODUCT)_manuals.rst1 @for file in $(LIST_SRCSH); \ do echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo ".. raw:: latex" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo " \newpage" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo ".. _$$(basename $${file}) :" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo "$$(basename $${file})" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo "$$(basename $${file} | tr [:print:] =)" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ; \ echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ sed -e "s/^==*$$/-----------------/" ${DIRTMP}/$$(basename $${file}).rst >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ done @for file in $(LIST_SRCMATLAB); \ do echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo ".. raw:: latex" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo " \newpage" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo ".. _$$(basename $${file}) :" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo "$$(basename $${file})" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ;\ echo "$$(basename $${file} | tr [:print:] =)" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ; \ echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ sed -e "s/^==*$$/-----------------/" ${DIRTMP}/$$(basename $${file}).rst >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ done @grep "\.\. _.*: .*$$" ${DIRTMP}/$(PRODUCT)_manuals.rst1 > \ ${DIRTMP}/links.rst @sed -e "s/^ *//" ${DIRTMP}/links.rst | sort -u > ${DIRTMP}/links.rst2 @sed -e "/\.\. _.*: .*$$/d" ${DIRTMP}/$(PRODUCT)_manuals.rst1 > \ ${DIRTMP}/$(PRODUCT)_manuals.rst2 @cp ${DIRTMP}/$(PRODUCT)_manuals.rst2 $@ $(DIRTMP)/index.rst : @echo "=================" >> $@ @echo "$(PRODUCTNAME) manuals" >> $@ @echo "=================" >> $@ @echo " " >> $@ @echo "Shell scripts" >> $@ @echo "=============" >> $@ @for file in $(LIST_SRCSH); do echo " ";echo "$$(basename $${file})_"; echo " "; echo ".. _$$(basename $${file}) : $$(basename $${file}).html"; done >> $@ @echo " " >> $@ @echo "MATLAB scripts" >> $@ @echo "==============" >> $@ @for file in $(LIST_SRCMATLAB); do echo " ";echo "$$(basename $${file})_"; echo " "; echo ".. _$$(basename $${file}) : $$(basename $${file}).html"; done >> $@ @echo " " >> $@ $(DIRWWW)/manuals/html/many/$(PRODUCT)_profile.sh.html : \ $(DIRTMP)/$(PRODUCT)_profile.sh.rst @rst2html.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRWWW)/manuals/pdf/many/$(PRODUCT)_profile.sh.pdf : \ $(DIRTMP)/$(PRODUCT)_profile.sh.tex @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/many/ $< $(DIRTMP)/$(PRODUCT)_profile.sh.tex : \ $(DIRTMP)/$(PRODUCT)_profile.sh.rst @rst2newlatex.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRTMP)/$(PRODUCT)_profile.sh.rst : \ $(DIRSRC)/$(PRODUCT)_profile.sh @extract_rst.sh -i $< -l sh -o $@ $(DIRWWW)/manuals/html/many/dlogd.sh.html : \ $(DIRTMP)/dlogd.sh.rst @rst2html.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRWWW)/manuals/pdf/many/dlogd.sh.pdf : \ $(DIRTMP)/dlogd.sh.tex @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/many/ $< @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/many/ $< $(DIRTMP)/dlogd.sh.tex : \ $(DIRTMP)/dlogd.sh.rst @rst2newlatex.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRTMP)/dlogd.sh.rst : \ $(DIRSRC)/dlogd.sh @extract_rst.sh -i $< -l sh -o $@ $(DIRWWW)/manuals/html/many/elogd.sh.html : \ $(DIRTMP)/elogd.sh.rst @rst2html.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRWWW)/manuals/pdf/many/elogd.sh.pdf : \ $(DIRTMP)/elogd.sh.tex @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/many/ $< @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/many/ $< $(DIRTMP)/elogd.sh.tex : \ $(DIRTMP)/elogd.sh.rst @rst2newlatex.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRTMP)/elogd.sh.rst : \ $(DIRSRC)/elogd.sh @extract_rst.sh -i $< -l sh -o $@ $(DIRWWW)/manuals/html/many/plogd.sh.html : \ $(DIRTMP)/plogd.sh.rst @rst2html.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRWWW)/manuals/pdf/many/plogd.sh.pdf : \ $(DIRTMP)/plogd.sh.tex @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/many/ $< @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/many/ $< $(DIRTMP)/plogd.sh.tex : \ $(DIRTMP)/plogd.sh.rst @rst2newlatex.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRTMP)/plogd.sh.rst : \ $(DIRSRC)/plogd.sh @extract_rst.sh -i $< -l sh -o $@ $(DIRWWW)/manuals/html/many/tlogd.sh.html : \ $(DIRTMP)/tlogd.sh.rst @rst2html.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRWWW)/manuals/pdf/many/tlogd.sh.pdf : \ $(DIRTMP)/tlogd.sh.tex @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/many/ $< @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/many/ $< $(DIRTMP)/tlogd.sh.tex : \ $(DIRTMP)/tlogd.sh.rst @rst2newlatex.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRTMP)/tlogd.sh.rst : \ $(DIRSRC)/tlogd.sh @extract_rst.sh -i $< -l sh -o $@ $(DIRWWW)/manuals/html/many/$(PRODUCT)_startup.m.html : \ $(DIRTMP)/$(PRODUCT)_startup.m.rst @rst2html.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRWWW)/manuals/pdf/many/$(PRODUCT)_startup.m.pdf : \ $(DIRTMP)/$(PRODUCT)_startup.m.tex @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/many/ $< $(DIRTMP)/$(PRODUCT)_startup.m.tex : \ $(DIRTMP)/$(PRODUCT)_startup.m.rst @rst2newlatex.py --input-encoding=ISO-8859-15 --strict \ $< $@ $(DIRTMP)/$(PRODUCT)_startup.m.rst : \ $(DIRSRC)/$(PRODUCT)_startup.m @extract_rst.sh -i $< -l matlab -o $@