Changeset 74


Ignore:
Timestamp:
03/25/10 14:08:37 (14 years ago)
Author:
pinsard
Message:

add manuals productions using sphinx

Location:
trunk/adm
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/adm/extract_rst.sh

    r73 r74  
    215215 ;; 
    216216 *) 
     217  echo "eee : unknown option ${1}" 
    217218  echo "${usage}" 
    218219  exit 1 
  • trunk/adm/makefile

    r70 r74  
    1919# 
    2020# $Id$ 
     21# 
     22# - fplod 20100325T114658Z aedon.locean-ipsl.upmc.fr (Darwin) 
     23# 
     24#   * add sphinx for HTML and PDF productions 
     25#   * remove html_one and pdf_one 
    2126# 
    2227# - fplod 20100310T111645Z aedon.locean-ipsl.upmc.fr (Darwin) 
     
    123128LIST_SRCSH_RST = \ 
    124129$(shell echo "$(LIST_SRCSH)" | \ 
    125         sed -e "s+$(DIRSRC)+$(DIRTMP)+g" \ 
    126             -e "s+\.sh+.sh.rst+g") 
     130        sed -e "s+$(DIRSRC)+$(DIRTMP)+g" \ 
     131            -e "s+\.sh+.sh.rst+g") 
    127132 
    128133LIST_SRCSH_TROFF = \ 
    129134$(shell echo "$(LIST_SRCSH)" | \ 
    130         sed -e "s+$(DIRSRC)+$(DIRWWW)/manuals/man/man1/+g" \ 
    131             -e "s+\.sh+.sh.1+g") 
     135        sed -e "s+$(DIRSRC)+$(DIRWWW)/manuals/man/man1/+g" \ 
     136            -e "s+\.sh+.sh.1+g") 
    132137 
    133138LIST_SRCSH_HTML = \ 
    134139$(shell echo "$(LIST_SRCSH)" | \ 
    135         sed -e "s+$(DIRSRC)+$(DIRWWW)/manuals/html/many/+g" \ 
    136             -e "s+\.sh+.sh.html+g") 
     140        sed -e "s+$(DIRSRC)+$(DIRWWW)/manuals/html/many/+g" \ 
     141            -e "s+\.sh+.sh.html+g") 
    137142 
    138143LIST_SRCSH_PDF = \ 
    139144$(shell echo "$(LIST_SRCSH)" | \ 
    140         sed -e "s+$(DIRSRC)+$(DIRWWW)/manuals/pdf/many/+g" \ 
    141             -e "s+\.sh+.sh.pdf+g") 
     145        sed -e "s+$(DIRSRC)+$(DIRWWW)/manuals/pdf/many/+g" \ 
     146            -e "s+\.sh+.sh.pdf+g") 
    142147 
    143148LIST_SRCMATLAB = \ 
     
    169174LIST_SRCMATLAB_RST = \ 
    170175$(shell echo "$(LIST_SRCMATLAB)" | \ 
    171         sed -e "s+$(DIRSRC)/mode_sahelien+$(DIRTMP)+g" \ 
    172             -e "s+$(DIRSRC)/SIMULS_IRCAAM+$(DIRTMP)+g" \ 
    173             -e "s+$(DIRSRC)+$(DIRTMP)+g" \ 
    174             -e "s+\.m+.m.rst+g") 
     176        sed -e "s+$(DIRSRC)/mode_sahelien+$(DIRTMP)+g" \ 
     177            -e "s+$(DIRSRC)/SIMULS_IRCAAM+$(DIRTMP)+g" \ 
     178            -e "s+$(DIRSRC)+$(DIRTMP)+g" \ 
     179            -e "s+\.m+.m.rst+g") 
    175180 
    176181LIST_SRCMATLAB_HTML = \ 
    177182$(shell echo "$(LIST_SRCMATLAB)" | \ 
    178         sed -e "s+$(DIRSRC)/mode_sahelien/+$(DIRWWW)/manuals/html/many/+g" \ 
    179             -e "s+$(DIRSRC)/SIMULS_IRCAAM/+$(DIRWWW)/manuals/html/many/+g" \ 
    180             -e "s+$(DIRSRC)+$(DIRWWW)/manuals/html/many/+g" \ 
    181             -e "s+\.m+.m.html+g") 
     183        sed -e "s+$(DIRSRC)/mode_sahelien/+$(DIRWWW)/manuals/html/many/+g" \ 
     184            -e "s+$(DIRSRC)/SIMULS_IRCAAM/+$(DIRWWW)/manuals/html/many/+g" \ 
     185            -e "s+$(DIRSRC)+$(DIRWWW)/manuals/html/many/+g" \ 
     186            -e "s+\.m+.m.html+g") 
    182187 
    183188LIST_SRCMATLAB_PDF = \ 
    184189$(shell echo "$(LIST_SRCMATLAB)" | \ 
    185         sed -e "s+$(DIRSRC)/mode_sahelien/+$(DIRWWW)/manuals/pdf/many/+g" \ 
    186             -e "s+$(DIRSRC)/SIMULS_IRCAAM/+$(DIRWWW)/manuals/pdf/many/+g" \ 
    187             -e "s+$(DIRSRC)+$(DIRWWW)/manuals/pdf/many/+g" \ 
    188             -e "s+\.m+.m.pdf+g") 
     190        sed -e "s+$(DIRSRC)/mode_sahelien/+$(DIRWWW)/manuals/pdf/many/+g" \ 
     191            -e "s+$(DIRSRC)/SIMULS_IRCAAM/+$(DIRWWW)/manuals/pdf/many/+g" \ 
     192            -e "s+$(DIRSRC)+$(DIRWWW)/manuals/pdf/many/+g" \ 
     193            -e "s+\.m+.m.pdf+g") 
    189194 
    190195LIST_SRCFORTRAN = \ 
     
    194199LIST_SRCFORTRAN_RST = \ 
    195200$(shell echo "$(LIST_SRCFORTRAN)" | \ 
    196         sed -e "s+$(DIRSRC)/SIMULS_IRCAAM/+$(DIRTMP)+g" \ 
    197             -e "s+$(DIRSRC)+$(DIRTMP)+g" \ 
    198             -e "s+\.F90+.F90.rst+g" \ 
    199             -e "s+\.f+.f.rst+g") 
     201        sed -e "s+$(DIRSRC)/SIMULS_IRCAAM/+$(DIRTMP)+g" \ 
     202            -e "s+$(DIRSRC)+$(DIRTMP)+g" \ 
     203            -e "s+\.F90+.F90.rst+g" \ 
     204            -e "s+\.f+.f.rst+g") 
    200205 
    201206LIST_SRCFORTRAN_HTML = \ 
    202207$(shell echo "$(LIST_SRCFORTRAN)" | \ 
    203         sed -e "s+$(DIRSRC)/SIMULS_IRCAAM/+$(DIRWWW)/manuals/html/many/+g" \ 
    204             -e "s+$(DIRSRC)+$(DIRWWW)/manuals/html/many/+g" \ 
    205             -e "s+\.F90+.F90.html+g" \ 
    206             -e "s+\.f+.f.html+g") 
     208        sed -e "s+$(DIRSRC)/SIMULS_IRCAAM/+$(DIRWWW)/manuals/html/many/+g" \ 
     209            -e "s+$(DIRSRC)+$(DIRWWW)/manuals/html/many/+g" \ 
     210            -e "s+\.F90+.F90.html+g" \ 
     211            -e "s+\.f+.f.html+g") 
    207212 
    208213LIST_SRCFORTRAN_PDF = \ 
    209214$(shell echo "$(LIST_SRCFORTRAN)" | \ 
    210         sed -e "s+$(DIRSRC)/mode_sahelien/+$(DIRWWW)/manuals/pdf/many/+g" \ 
    211             -e "s+$(DIRSRC)/SIMULS_IRCAAM/+$(DIRWWW)/manuals/pdf/many/+g" \ 
    212             -e "s+$(DIRSRC)+$(DIRWWW)/manuals/pdf/many/+g" \ 
    213             -e "s+\.F90+.F90.pdf+g" \ 
    214             -e "s+\.f+.f.pdf+g") 
     215        sed -e "s+$(DIRSRC)/mode_sahelien/+$(DIRWWW)/manuals/pdf/many/+g" \ 
     216            -e "s+$(DIRSRC)/SIMULS_IRCAAM/+$(DIRWWW)/manuals/pdf/many/+g" \ 
     217            -e "s+$(DIRSRC)+$(DIRWWW)/manuals/pdf/many/+g" \ 
     218            -e "s+\.F90+.F90.pdf+g" \ 
     219            -e "s+\.f+.f.pdf+g") 
    215220 
    216221RST2MAN = \ 
     
    222227RST2LATEX = \ 
    223228rst2latex.py 
    224  
    225 RST2LATEX_OPTIONS_ONE = \ 
    226 --documentclass=book \ 
    227 --stylesheet=manual_one.sty \ 
    228 --use-latex-toc \ 
    229 --section-numbering \ 
    230 --traceback \ 
    231 --use-verbatim-when-possible 
    232229 
    233230RST2LATEX_OPTIONS_MANY = \ 
     
    249246man_troff \ 
    250247man_html \ 
    251 man_html_one \ 
    252248man_html_many \ 
     249man_html_sphinx \ 
    253250man_pdf \ 
    254 man_pdf_one \ 
    255 man_pdf_many 
     251man_pdf_many \ 
     252man_pdf_sphinx 
    256253 
    257254help : 
     
    274271before : 
    275272        @mkdir -p $(DIRWWW)/manuals/man/man1/ 
    276         @mkdir -p $(DIRWWW)/manuals/html/one/ 
    277273        @mkdir -p $(DIRWWW)/manuals/html/many/ 
    278         @mkdir -p $(DIRWWW)/manuals/pdf/one/ 
    279274        @mkdir -p $(DIRWWW)/manuals/pdf/many/ 
     275        @mkdir -p $(DIRWWW)/manuals/pdf/sphinx/ 
     276        @mkdir -p $(DIRTMP)/sphinx_tmpdir/doctrees/ 
    280277 
    281278install_all : \ 
     
    302299        -@rm -f $(DIRTMP)/links.rst* 
    303300        -@rm -f $(DIRTMP)/*.tex 
    304         -@rm -f $(DIRWWW)/manuals/pdf/one/*.aux 
    305         -@rm -f $(DIRWWW)/manuals/pdf/one/*.log 
    306         -@rm -f $(DIRWWW)/manuals/pdf/one/*.out 
    307301        -@rm -f $(DIRWWW)/manuals/pdf/many/*.aux 
    308302        -@rm -f $(DIRWWW)/manuals/pdf/many/*.log 
    309303        -@rm -f $(DIRWWW)/manuals/pdf/many/*.out 
     304        -@rm -fr $(DIRTMP)/sphinx_tmpdir/ 
     305        -@rm -f $(DIRTMP)/sphinx_*.log 
    310306 
    311307design : \ 
     
    332328 
    333329man_html : \ 
    334 man_html_one \ 
    335 man_html_many 
    336  
    337 man_html_one : \ 
    338 $(DIRWWW)/manuals/html/one/index.html 
     330man_html_many \ 
     331man_html_sphinx 
    339332 
    340333man_html_many : \ 
     
    344337$(LIST_SRCFORTRAN_HTML) 
    345338 
     339man_html_sphinx : \ 
     340$(DIRADM)/sphinx/conf.py \ 
     341$(DIRTMP)/sphinx_tmpdir/index.rst \ 
     342$(LIST_SRCSH_RST) \ 
     343$(LIST_SRCMATLAB_RST) \ 
     344$(LIST_SRCFORTRAN_RST) 
     345        @cp $(LIST_SRCSH_RST) $(DIRTMP)/sphinx_tmpdir/ 
     346        @cp $(LIST_SRCMATLAB_RST) $(DIRTMP)/sphinx_tmpdir/ 
     347        @cp $(LIST_SRCFORTRAN_RST) $(DIRTMP)/sphinx_tmpdir/ 
     348        @sphinx-build -b html -c $(DIRADM)/sphinx \ 
     349            -d $(DIRTMP)/sphinx_tmpdir/doctrees \ 
     350            -w $(DIRTMP)/sphinx_html.log \ 
     351            $(DIRTMP)/sphinx_tmpdir/ \ 
     352            $(DIRWWW)/manuals/html/sphinx/ 
     353 
    346354man_pdf : \ 
    347 man_pdf_one \ 
    348 man_pdf_many 
    349  
    350 man_pdf_one : \ 
    351 $(DIRWWW)/manuals/pdf/one/$(PRODUCT)_manuals.pdf \ 
     355man_pdf_many \ 
     356man_pdf_sphinx 
    352357 
    353358man_pdf_many : \ 
     
    356361$(LIST_SRCFORTRAN_PDF) 
    357362 
     363man_pdf_sphinx : \ 
     364$(DIRADM)/sphinx/conf.py \ 
     365$(DIRTMP)/sphinx_tmpdir/index.rst \ 
     366$(LIST_SRCSH_PDF) \ 
     367$(LIST_SRCMATLAB_PDF) \ 
     368$(LIST_SRCFORTRAN_PDF) 
     369        @cp $(LIST_SRCSH_RST) $(DIRTMP)/sphinx_tmpdir/ 
     370        @cp $(LIST_SRCMATLAB_RST) $(DIRTMP)/sphinx_tmpdir/ 
     371        @cp $(LIST_SRCFORTRAN_RST) $(DIRTMP)/sphinx_tmpdir/ 
     372        @sphinx-build -b latex -c $(DIRADM)/sphinx \ 
     373            -d $(DIRTMP)/sphinx_tmpdir/doctrees \ 
     374            -w $(DIRTMP)/sphinx_pdf.log \ 
     375            $(DIRTMP)/sphinx_tmpdir/ \ 
     376            $(DIRTMP)/sphinx_tmpdir/latex_output 
     377        cd $(DIRTMP)/sphinx_tmpdir/latex_output/; make all-pdf 
     378        cp $(DIRTMP)/sphinx_tmpdir/latex_output/*.pdf \ 
     379           $(DIRWWW)/manuals/pdf/sphinx/ 
     380 
    358381$(DIRWWW)/manuals/html/many/index.html : \ 
    359382$(DIRTMP)/index_many.rst 
    360383        @$(RST2HTML) --input-encoding=ISO-8859-15 --strict \ 
    361384        $< $@ 
    362  
    363 $(DIRWWW)/manuals/html/one/index.html : \ 
    364 $(DIRTMP)/$(PRODUCT)_manuals.rst 
    365         @$(RST2HTML) --input-encoding=ISO-8859-15 --strict \ 
    366         $< $@ 
    367  
    368 $(DIRWWW)/manuals/pdf/one/$(PRODUCT)_manuals.pdf : \ 
    369 $(DIRTMP)/$(PRODUCT)_manuals.tex 
    370         @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/one/ $< 
    371         @-pdflatex -output-directory $(DIRWWW)/manuals/pdf/one/ $< 
    372  
    373 $(DIRTMP)/$(PRODUCT)_manuals.tex : \ 
    374 $(DIRTMP)/$(PRODUCT)_manuals.rst 
    375         @$(RST2LATEX) $(RST2LATEX_OPTIONS_ONE) --input-encoding=ISO-8859-15 --strict \ 
    376         $< $@ 
    377  
    378 $(DIRTMP)/$(PRODUCT)_manuals.rst : \ 
    379 $(DIRTMP)/index_one.rst \ 
    380 $(LIST_SRCSH_RST) \ 
    381 $(LIST_SRCMATLAB_RST) \ 
    382 $(LIST_SRCFORTRAN_RST) 
    383         @cat $(DIRTMP)/index_one.rst > ${DIRTMP}/$(PRODUCT)_manuals.rst1 
    384         @echo "Shell scripts" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 
    385         @echo "=============" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 
    386         @for file in $(LIST_SRCSH); \ 
    387         do echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    388          echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    389          echo ".. _$$(basename $${file}) :" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    390          echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    391          echo "$$(basename $${file})" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    392          echo "$$(basename $${file} | tr [:print:] -)" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ; \ 
    393          echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    394          sed -e "s/^==*$$/-----------------/" \ 
    395         -e "s/^--*$$/~~~~~~~~~~~~~~~~~~~~/" \ 
    396          ${DIRTMP}/$$(basename $${file}).rst >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    397         done 
    398         @echo "MATLAB scripts" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 
    399         @echo "==============" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 
    400         @for file in $(LIST_SRCMATLAB); \ 
    401         do echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    402          echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    403          echo ".. _$$(basename $${file}) :" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    404          echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    405          echo "$$(basename $${file})" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    406          echo "$$(basename $${file} | tr [:print:] -)" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ; \ 
    407          echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    408          sed -e "s/^==*$$/-----------------/" \ 
    409          -e "s/^--*$$/~~~~~~~~~~~~~~~~~~~~/" \ 
    410          ${DIRTMP}/$$(basename $${file}).rst >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    411         done 
    412         @echo "Fortran Sources" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 
    413         @echo "===============" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 
    414         @for file in $(LIST_SRCFORTRAN); \ 
    415         do echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    416         echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    417         echo ".. _$$(basename $${file}) :" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    418         echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    419         echo "$$(basename $${file})" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    420         echo "$$(basename $${file} | tr [:print:] -)" >> ${DIRTMP}/$(PRODUCT)_manuals.rst1 ; \ 
    421         echo " " >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    422         sed -e "s/^==*$$/-----------------/" \ 
    423         -e "s/^--*$$/~~~~~~~~~~~~~~~~~~~~/" \ 
    424         ${DIRTMP}/$$(basename $${file}).rst >> ${DIRTMP}/$(PRODUCT)_manuals.rst1; \ 
    425         done 
    426         @grep "\.\. _.*: .*$$" ${DIRTMP}/$(PRODUCT)_manuals.rst1 > \ 
    427         ${DIRTMP}/links.rst 
    428         @sed -e "s/^ *//" ${DIRTMP}/links.rst | sort -u > ${DIRTMP}/links.rst2 
    429         @sed -e "/\.\. _.*: .*$$/d" ${DIRTMP}/$(PRODUCT)_manuals.rst1 > \ 
    430         ${DIRTMP}/$(PRODUCT)_manuals.rst2 
    431         @cp ${DIRTMP}/$(PRODUCT)_manuals.rst2 $@ 
    432  
    433 $(DIRTMP)/index_one.rst : 
    434         @echo "=================" >> $@ 
    435         @echo "$(PRODUCTNAME) manuals" >> $@ 
    436         @echo "=================" >> $@ 
    437         @echo " " >> $@ 
    438         @echo ".. contents:: Table of Contents" >> $@ 
    439         @echo "  :depth: 2" >> $@ 
    440         @echo ".. section-numbering::" >> $@ 
    441         @echo " " >> $@ 
    442385 
    443386$(DIRTMP)/index_many.rst : 
     
    474417        @echo " " >> $@ 
    475418 
     419$(DIRTMP)/sphinx_tmpdir/index.rst : 
     420        @echo ".. _index:" >> $@ 
     421        @echo " " >> $@ 
     422        @echo "$(PRODUCTNAME) manuals" | tr [:print:] = >> $@ 
     423        @echo "$(PRODUCTNAME) manuals" >> $@ 
     424        @echo "$(PRODUCTNAME) manuals" | tr [:print:] = >> $@ 
     425        @echo " " >> $@ 
     426        @echo "Shell scripts" >> $@ 
     427        @echo "Shell scripts" | tr [:print:] = >> $@ 
     428        @echo ".. toctree::" >> $@ 
     429        @echo "   :maxdepth: 1" 1>> $@ 
     430        @echo "   :glob:" 1>> $@ 
     431        @echo " " >> $@ 
     432        @for file in $(LIST_SRCSH); \ 
     433        do \ 
     434           echo "   $$(basename $${file})"; \ 
     435        done >> $@ 
     436        @echo " " >> $@ 
     437        @echo "MATLAB scripts" >> $@ 
     438        @echo "MATLAB scripts" | tr [:print:] = >> $@ 
     439        @echo ".. toctree::" >> $@ 
     440        @echo "   :maxdepth: 1" 1>> $@ 
     441        @echo "   :glob:" 1>> $@ 
     442        @echo " " >> $@ 
     443        @for file in $(LIST_SRCMATLAB); \ 
     444        do \ 
     445           echo "   $$(basename $${file})"; \ 
     446        done >> $@ 
     447        @echo " " >> $@ 
     448        @echo "Fortran Sources" >> $@ 
     449        @echo "Fortran Sources" | tr [:print:] = >> $@ 
     450        @echo ".. toctree::" >> $@ 
     451        @echo "   :maxdepth: 1" 1>> $@ 
     452        @echo "   :glob:" 1>> $@ 
     453        @echo " " >> $@ 
     454        @for file in $(LIST_SRCFORTRAN); \ 
     455        do \ 
     456           echo "   $$(basename $${file})"; \ 
     457        done >> $@ 
     458        @echo " " >> $@ 
     459        @echo "Indices and tables" >> $@ 
     460        @echo "Indices and tables" | tr [:print:] = >> $@ 
     461        @echo "* :ref:\`search\`" >> $@ 
     462        @echo " " >> $@ 
     463 
    476464$(DIRWWW)/manuals/man/man1/%.1:$(DIRTMP)/%.rst 
    477465        @$(RST2MAN) --input-encoding=ISO-8859-15 --strict \ 
Note: See TracChangeset for help on using the changeset viewer.