Ticket #3798: mythtv_docs_v3a.diff

File mythtv_docs_v3a.diff, 8.7 KB (added by Roo <roo.watt@…>, 12 years ago)

v3a updated for r15810

  • configure

     
    6464  echo "  --libdir-name=LIBNAME    search/install libraries in PREFIX/LIBNAME [$libdir_name]"
    6565  echo "  --disable-ccache         disable compiler cache (ccache)"
    6666  echo "  --disable-distcc         disable distributed compilation (distcc)"
     67  echo "  --enable-dev-docs        builds the developer documentation"
    6768<<BLOCK_QUOTE
    6869  echo "  --libdir=DIR             install libs in DIR [PREFIX/lib]"
    6970  echo "  --shlibdir=DIR           install shared libs in DIR [PREFIX/lib]"
     
    862863MYTHTV_CONFIG_LIST='
    863864    backend
    864865    dbox2
     866    dev_docbuild
    865867    directfb
    866868    directx
    867869    dvb
     
    874876    lirc
    875877    opengl_vsync
    876878    opengl_video
     879    user_docbuild
    877880    v4l
    878881    valgrind
    879882    x11
     
    11441147enable audio_oss
    11451148bindings_perl="yes"
    11461149dbox2="yes"
     1150dev_docbuild="no"
     1151directx="no"
    11471152directfb="yes"
    11481153dvb_path="/usr/include"
    11491154dvb="yes"
     
    11571162lamemp3="yes"
    11581163lirc="yes"
    11591164opengl="yes"
     1165user_docbuild="no"
    11601166v4l="yes"
    11611167x11="yes"
    11621168x11_include_path="/usr/X11R6/include"
     
    13111317  ;;
    13121318  --arch=*) arch="$optval" && arch_raw="$optval" && enable cpu_override
    13131319  ;;
     1320  --disable-distcc) distcc="no"
     1321  ;;
    13141322  --cpu=*) cpu="$optval" && enable cpu_override
    13151323  ;;
    13161324
     
    13791387          fi
    13801388      done
    13811389  ;;
     1390  --disable-dev-docs) dev_docbuild="no"
     1391  ;;
     1392  --enable-dev-docs) dev_docbuild="yes"
     1393        doxygen --version > /dev/null 2>&1
     1394        if test $? -ne 0 ; then
     1395            dev_docbuild="no"
     1396            echo "*** Doxygen unavailable, disabling dev-docs!"
     1397        fi
     1398  ;;
     1399  --disable-user-docs) user_docbuild="no"
     1400  ;;
     1401  --enable-user-docs) user_docbuild="yes"
     1402        which htmldoc > /dev/null 2>&1
     1403        if test $? -ne 0 ; then
     1404            user_docbuild="no"
     1405            echo "*** htmldoc unavailable, disabling user-docs!"
     1406        fi
     1407        which linuxdoc > /dev/null 2>&1
     1408        if test $? -ne 0 ; then
     1409            user_docbuild="no"
     1410            echo "*** linuxdoc unavailable, disabling user-docbuild!"
     1411        fi
     1412  ;;
    13821413  --disable-encoders) disable $ENCODER_LIST
    13831414  ;;
    13841415  --disable-decoders) disable $DECODER_LIST
     
    29693000echo "# Misc Features"
    29703001echo "Frontend                  ${frontend-no}"
    29713002echo "Backend                   ${backend-no}"
     3003echo "Build Developer Docs      ${dev_docbuild}"
     3004if test x"${user_docbuild}" = x"yes"; then
     3005  echo "Build User Docs           ${user_docbuild}"
     3006fi
    29723007echo
    29733008
    29743009echo "# Bindings"
  • docs/docs.pro

     
     1# To build this stuff, you need the linuxdoc tools and htmldoc.  On Debian,
     2# this means: linuxdoc-tools linuxdoc-tools-text htmldoc
     3#
     4#  - mdz
     5
     6#
     7# The dev docs need "doxygen" to build.
     8#
     9
     10include ( ../config.mak )
     11include ( ../settings.pro )
     12
     13INSTALLDIR = $${PREFIX}/share/doc/mythtv
     14
     15TARGET = dummy
     16SOURCES = dummy.c
     17QMAKE_CLEAN += $${TARGET}
     18
     19phony.target = .PHONY
     20phony.depends = clean install doc_installer
     21QMAKE_EXTRA_UNIX_TARGETS += phony
     22
     23validate.target = validate
     24validate.depends = mythtv-HOWTO.sgml
     25validate.commands = linuxdoc -B check mythtv-HOWTO.sgml 2>&1 | tee validate
     26QMAKE_EXTRA_UNIX_TARGETS += validate
     27CLEAN_FILES += validate
     28
     29splithtml.target = index.html
     30splithtml.depends = validate
     31splithtml.commands = linuxdoc -B html --split=1 --toc=2 mythtv-HOWTO.sgml; \
     32    $${QMAKE_MOVE} mythtv-HOWTO.html index.html
     33QMAKE_EXTRA_UNIX_TARGETS += splithtml
     34USER_INSTALLS += index.html mythtv-HOWTO-[0-9]*.html
     35using_user_docbuild {
     36    CLEAN_FILES += index.html mythtv-HOWTO-[0-9]*.html
     37}
     38
     39singlehtml.target = mythtv-HOWTO-singlehtml.html
     40singlehtml.depends = validate
     41singlehtml.commands = linuxdoc -B html --split=0 --toc=2 mythtv-HOWTO.sgml; \
     42    $${QMAKE_MOVE} mythtv-HOWTO.html mythtv-HOWTO-singlehtml.html
     43QMAKE_EXTRA_UNIX_TARGETS += singlehtml
     44#USER_INSTALLS += mythtv-HOWTO-singlehtml.html
     45using_user_docbuild {
     46    CLEAN_FILES += mythtv-HOWTO-singlehtml.html
     47}
     48
     49textdoc.target = mythtv-HOWTO.txt
     50textdoc.depends = validate
     51textdoc.commands = linuxdoc -B txt mythtv-HOWTO.sgml
     52QMAKE_EXTRA_UNIX_TARGETS += textdoc
     53USER_INSTALLS += mythtv-HOWTO.txt
     54using_user_docbuild {
     55    CLEAN_FILES += mythtv-HOWTO.txt
     56}
     57
     58pdf.target = mythtv-HOWTO.pdf
     59pdf.depends = mythtv-HOWTO-singlehtml.html
     60pdf.commands = htmldoc --book --quiet \
     61    --outfile mythtv-HOWTO.pdf mythtv-HOWTO-singlehtml.html
     62QMAKE_EXTRA_UNIX_TARGETS += pdf
     63USER_INSTALLS += mythtv-HOWTO.pdf
     64using_user_docbuild {
     65    CLEAN_FILES += mythtv-HOWTO.pdf
     66}
     67
     68devdocs.target = dev-docs
     69devdocs.commands = doxygen doxygen-create-developer-docs.cfg
     70QMAKE_EXTRA_UNIX_TARGETS += devdocs
     71using_dev_docbuild {
     72    DEV_INSTALLS += dev-docs
     73}
     74CLEAN_FILES += doxygen-warnings.txt
     75CLEAN_COMMANDS += ; rm -Rf dev-docs
     76
     77# Ask qmake to clean these files
     78# The commands MUST be last
     79#
     80QMAKE_CLEAN += $${CLEAN_FILES} $${CLEAN_COMMANDS}
     81
     82# Control what is built with a plain "make"
     83#
     84using_user_docbuild {
     85    PRE_TARGETDEPS += index.html
     86    PRE_TARGETDEPS += mythtv-HOWTO-singlehtml.html
     87    PRE_TARGETDEPS += mythtv-HOWTO.txt
     88    PRE_TARGETDEPS += mythtv-HOWTO.pdf
     89}
     90using_dev_docbuild {
     91    PRE_TARGETDEPS += dev-docs
     92}
     93
     94# Get on with it...
     95# Install the file bundle, if not done as a separate group
     96# qmake tries to build the docs when installing them.
     97# This is a problem with doxygen :)
     98#
     99doc_installer.target = doc_installer
     100doc_installer.path = $${INSTALLDIR}
     101doc_installer.files = $${USER_INSTALLS} $${DEV_INSTALLS}
     102INSTALLS += doc_installer
     103
     104# Ensure that the makefile is remade after any target is built.
     105# This is needed as qmake expands the file wildcards when
     106# it writes out the Makefile. If the install files/dirs do
     107# not exist when "qmake docs.pro" is run it wont get
     108# included in the install list
     109#
     110POST_TARGETDEPS += qmake
  • docs/Makefile

     
    1 # To build this stuff, you need the linuxdoc tools and htmldoc.  On Debian,
    2 # this means: linuxdoc-tools linuxdoc-tools-text htmldoc
    3 #
    4 #  - mdz
    5 
    6 TARGETS = mythtv-HOWTO.txt mythtv-HOWTO.html mythtv-HOWTO-singlehtml.html mythtv-HOWTO.pdf index.html
    7 LINUXDOC_HTML_SPLIT := 1
    8 
    9 all: $(TARGETS)
    10 clean:
    11         rm -f $(TARGETS) $(patsubst %.html,%-[0-9]*.html,$(filter %.html,$(TARGETS)))
    12         rm -Rf doxygen-dev-docs doxygen-warnings.txt
    13 
    14 distclean: clean
    15 
    16 validate: mythtv-HOWTO.sgml
    17         linuxdoc -B check $<
    18 
    19 %.txt: %.sgml
    20         linuxdoc -B txt $<
    21 
    22 # Generate PDF via LaTeX using linuxdoc
    23 #%.pdf: %.sgml
    24 #       linuxdoc -B latex -o pdf $<
    25 
    26 # Generate PDF via HTML using htmldoc
    27 %.pdf: %-singlehtml.html
    28         # htmldoc exits unsuccessfully for no good reason -mdz
    29         htmldoc --book --quiet --outfile $@ $< || true
    30 
    31 %.html: %.sgml
    32         linuxdoc -B html --split=$(LINUXDOC_HTML_SPLIT) --toc=2 $<
    33 
    34 %-singlehtml.html: LINUXDOC_HTML_SPLIT=0
    35 %-singlehtml.sgml: %.sgml
    36         cp $< $@
    37 
    38 index.html: mythtv-HOWTO.html
    39         cp $< $@
    40 
    41 devdocs:
    42         doxygen doxygen-create-developer-docs.cfg
  • docs/doxygen-create-developer-docs.cfg

     
    3030# If a relative path is entered, it will be relative to the location
    3131# where doxygen was started. If left blank the current directory will be used.
    3232
    33 OUTPUT_DIRECTORY       = doxygen-dev-docs
     33OUTPUT_DIRECTORY       = dev-docs
    3434
    3535# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
    3636# 2 levels of 10 sub-directories under the output directory of each output
     
    567567# If a relative path is entered the value of OUTPUT_DIRECTORY will be
    568568# put in front of it. If left blank `html' will be used as the default path.
    569569
    570 HTML_OUTPUT            = html
     570HTML_OUTPUT            = .
    571571
    572572# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
    573573# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
  • docs/dummy.c

     
     1int main (void)
     2{
     3   return 0;
     4}
     5 
  • mythtv.pro

     
    1212include ( settings.pro )
    1313
    1414# Directories
    15 SUBDIRS += libs filters programs themes i18n
     15SUBDIRS += libs filters programs themes i18n docs
    1616
    1717using_bindings_* {
    1818    SUBDIRS += bindings