gtk-doc.make
Upload User: shyika
Upload Date: 2017-11-25
Package Size: 1227k
Code Size: 5k
Category:

Video Capture

Development Platform:

Unix_Linux

  1. # -*- mode: makefile -*-
  2. ####################################
  3. # Everything below here is generic #
  4. ####################################
  5. if GTK_DOC_USE_LIBTOOL
  6. GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS)
  7. GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS)
  8. else
  9. GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS)
  10. GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS)
  11. endif
  12. # We set GPATH here; this gives us semantics for GNU make
  13. # which are more like other make's VPATH, when it comes to
  14. # whether a source that is a target of one rule is then
  15. # searched for in VPATH/GPATH.
  16. #
  17. GPATH = $(srcdir)
  18. TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
  19. EXTRA_DIST = 
  20. $(content_files)
  21. $(HTML_IMAGES)
  22. $(DOC_MAIN_SGML_FILE)
  23. $(DOC_MODULE)-sections.txt
  24. $(DOC_MODULE)-overrides.txt
  25. DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp 
  26.    $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
  27. SCANOBJ_FILES =   
  28. $(DOC_MODULE).args   
  29. $(DOC_MODULE).hierarchy  
  30. $(DOC_MODULE).interfaces 
  31. $(DOC_MODULE).prerequisites 
  32. $(DOC_MODULE).signals
  33. CLEANFILES = $(SCANOBJ_FILES) $(DOC_MODULE)-unused.txt $(DOC_STAMPS)
  34. if ENABLE_GTK_DOC
  35. all-local: html-build.stamp
  36. else
  37. all-local:
  38. endif
  39. docs: html-build.stamp
  40. #### scan ####
  41. scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB)
  42. @echo 'gtk-doc: Scanning header files'
  43. @-chmod -R u+w $(srcdir)
  44. cd $(srcdir) && 
  45.   gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
  46. if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then 
  47.     CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; 
  48. else 
  49.     cd $(srcdir) ; 
  50.     for i in $(SCANOBJ_FILES) ; do 
  51.                test -f $$i || touch $$i ; 
  52.     done 
  53. fi
  54. touch scan-build.stamp
  55. $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp
  56. @true
  57. #### templates ####
  58. tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
  59. @echo 'gtk-doc: Rebuilding template files'
  60. @-chmod -R u+w $(srcdir)
  61. cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS)
  62. touch tmpl-build.stamp
  63. tmpl.stamp: tmpl-build.stamp
  64. @true
  65. #### xml ####
  66. sgml-build.stamp: tmpl.stamp $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files)
  67. @echo 'gtk-doc: Building XML'
  68. @-chmod -R u+w $(srcdir)
  69. cd $(srcdir) && 
  70. gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS)
  71. touch sgml-build.stamp
  72. sgml.stamp: sgml-build.stamp
  73. @true
  74. #### html ####
  75. html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
  76. @echo 'gtk-doc: Building HTML'
  77. @-chmod -R u+w $(srcdir)
  78. rm -rf $(srcdir)/html 
  79. mkdir $(srcdir)/html
  80. cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
  81. test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
  82. @echo 'gtk-doc: Fixing cross-references' 
  83. cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
  84. touch html-build.stamp
  85. ##############
  86. clean-local:
  87. rm -f *~ *.bak
  88. rm -rf .libs
  89. maintainer-clean-local: clean
  90. cd $(srcdir) && rm -rf xml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
  91. install-data-local:
  92. installfiles=`echo $(srcdir)/html/*`; 
  93. if test "$$installfiles" = '$(srcdir)/html/*'; 
  94. then echo '-- Nothing to install' ; 
  95. else 
  96.   $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR); 
  97.   for i in $$installfiles; do 
  98.     echo '-- Installing '$$i ; 
  99.     $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); 
  100.   done; 
  101.   echo '-- Installing $(srcdir)/html/index.sgml' ; 
  102.   $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR) || :; 
  103. fi
  104. uninstall-local:
  105. rm -f $(DESTDIR)$(TARGET_DIR)/*
  106. #
  107. # Require gtk-doc when making dist
  108. #
  109. if ENABLE_GTK_DOC
  110. dist-check-gtkdoc:
  111. else
  112. dist-check-gtkdoc:
  113. @echo "*** gtk-doc must be installed and enabled in order to make dist"
  114. @false
  115. endif
  116. dist-hook: dist-check-gtkdoc dist-hook-local
  117. mkdir $(distdir)/tmpl
  118. mkdir $(distdir)/xml
  119. mkdir $(distdir)/html
  120. -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
  121. -cp $(srcdir)/xml/*.xml $(distdir)/xml
  122. cp $(srcdir)/html/* $(distdir)/html
  123. if test -f $(srcdir)/$(DOC_MODULE).types; then 
  124.   cp $(srcdir)/$(DOC_MODULE).types $(distdir)/$(DOC_MODULE).types; 
  125. fi
  126. .PHONY : dist-hook-local docs