1*735d6239SKiyoung Kim######################################################################## 2*735d6239SKiyoung Kim# Conditional rules, depending on tool availability 3*735d6239SKiyoung Kim######################################################################## 4*735d6239SKiyoung Kim 5*735d6239SKiyoung KimDOXYGEN_FILES = 6*735d6239SKiyoung KimDOXYGEN_STAMPS = 7*735d6239SKiyoung KimDOXYGEN_UPLOAD = 8*735d6239SKiyoung Kim 9*735d6239SKiyoung KimDOXYGEN_INSTALL_TARGETS = 10*735d6239SKiyoung KimDOXYGEN_UNINSTALL_TARGETS = 11*735d6239SKiyoung Kim 12*735d6239SKiyoung KimDOXYGEN_CLEAN_TARGETS = 13*735d6239SKiyoung Kim 14*735d6239SKiyoung KimDOXYGEN_TARBALLS = 15*735d6239SKiyoung Kim 16*735d6239SKiyoung Kim# FIXME: Depending on the source files would be sufficient, but only 17*735d6239SKiyoung Kim# maintainable with a completely non-recursive build. 18*735d6239SKiyoung Kim# Depending on libexif.la works at least. 19*735d6239SKiyoung Kim$(top_builddir)/libexif/libexif.la: 20*735d6239SKiyoung Kim cd $(top_builddir)/libexif && $(MAKE) libexif.la 21*735d6239SKiyoung Kim 22*735d6239SKiyoung Kimif BUILD_DOCS 23*735d6239SKiyoung Kimif HAVE_DOXYGEN 24*735d6239SKiyoung Kim 25*735d6239SKiyoung KimDOXYGEN_UPLOAD += $(HTML_APIDOC_DIR).uploaded 26*735d6239SKiyoung Kim 27*735d6239SKiyoung KimDOXYGEN_STAMPS += $(HTML_APIDOC_DIR).stamp 28*735d6239SKiyoung Kim$(HTML_APIDOC_DIR).stamp: Doxyfile $(top_builddir)/libexif/libexif.la 29*735d6239SKiyoung Kim $(DOXYGEN) $< 30*735d6239SKiyoung Kim echo > $@ 31*735d6239SKiyoung Kim 32*735d6239SKiyoung KimDOXYGEN_TARBALLS += $(HTML_APIDOC_DIR).tar.gz 33*735d6239SKiyoung Kim$(HTML_APIDOC_DIR).tar.gz: $(HTML_APIDOC_DIR).stamp 34*735d6239SKiyoung Kim (cd $(DOXYGEN_OUTPUT_DIR) && $(AMTAR) chof - $(HTML_APIDOC_DIR) | GZIP=--best gzip -c) > $@ 35*735d6239SKiyoung Kim 36*735d6239SKiyoung Kimif ENABLE_INTERNAL_DOCS 37*735d6239SKiyoung KimDOXYGEN_UPLOAD += $(HTML_APIDOC_INTERNALS_DIR).uploaded 38*735d6239SKiyoung Kim 39*735d6239SKiyoung KimDOXYGEN_STAMPS += $(HTML_APIDOC_INTERNALS_DIR).stamp 40*735d6239SKiyoung Kim$(HTML_APIDOC_INTERNALS_DIR).stamp: Doxyfile-internals $(top_builddir)/libexif/libexif.la 41*735d6239SKiyoung Kim $(DOXYGEN) $< 42*735d6239SKiyoung Kim echo > $@ 43*735d6239SKiyoung Kim 44*735d6239SKiyoung KimDOXYGEN_TARBALLS += $(HTML_APIDOC_INTERNALS_DIR).tar.gz 45*735d6239SKiyoung Kim$(HTML_APIDOC_INTERNALS_DIR).tar.gz: $(HTML_APIDOC_INTERNALS_DIR).stamp 46*735d6239SKiyoung Kim (cd $(DOXYGEN_OUTPUT_DIR) && $(AMTAR) chof - $(HTML_APIDOC_INTERNALS_DIR) | GZIP=--best gzip -c) > $@ 47*735d6239SKiyoung Kim 48*735d6239SKiyoung KimDOXYGEN_INSTALL_TARGETS += install-apidocs-internals 49*735d6239SKiyoung Kiminstall-apidocs-internals: $(HTML_APIDOC_INTERNALS_DIR).stamp 50*735d6239SKiyoung Kim mkdir -p "$(DESTDIR)$(docdir)" 51*735d6239SKiyoung Kim find "$(DOXYGEN_OUTPUT_DIR)/$(HTML_APIDOC_INTERNALS_DIR)" \ 52*735d6239SKiyoung Kim \( -type d -exec chmod 0755 {} \; \) -or \ 53*735d6239SKiyoung Kim \( -type f -exec chmod 0644 {} \; \) 54*735d6239SKiyoung Kim (unset CDPATH; cd "$(DOXYGEN_OUTPUT_DIR)" && tar cpf - "$(HTML_APIDOC_INTERNALS_DIR)") \ 55*735d6239SKiyoung Kim | (cd "$(DESTDIR)$(docdir)" && tar xpf -) 56*735d6239SKiyoung Kim 57*735d6239SKiyoung KimDOXYGEN_UNINSTALL_TARGETS += uninstall-apidocs-internals 58*735d6239SKiyoung Kimuninstall-apidocs-internals: 59*735d6239SKiyoung Kim rm -rf "$(DESTDIR)$(docdir)/$(HTML_APIDOC_INTERNALS_DIR)" 60*735d6239SKiyoung Kim 61*735d6239SKiyoung Kimendif 62*735d6239SKiyoung Kim 63*735d6239SKiyoung KimDOXYGEN_INSTALL_TARGETS += install-apidocs 64*735d6239SKiyoung Kiminstall-apidocs: $(HTML_APIDOC_DIR).stamp 65*735d6239SKiyoung Kim mkdir -p "$(DESTDIR)$(docdir)" 66*735d6239SKiyoung Kim find "$(DOXYGEN_OUTPUT_DIR)/$(HTML_APIDOC_DIR)" \ 67*735d6239SKiyoung Kim \( -type d -exec chmod 0755 {} \; \) -or \ 68*735d6239SKiyoung Kim \( -type f -exec chmod 0644 {} \; \) 69*735d6239SKiyoung Kim (unset CDPATH; cd "$(DOXYGEN_OUTPUT_DIR)" && tar cpf - "$(HTML_APIDOC_DIR)") \ 70*735d6239SKiyoung Kim | (cd "$(DESTDIR)$(docdir)" && tar xpf -) 71*735d6239SKiyoung Kim 72*735d6239SKiyoung KimDOXYGEN_UNINSTALL_TARGETS += uninstall-apidocs 73*735d6239SKiyoung Kimuninstall-apidocs: 74*735d6239SKiyoung Kim rm -rf "$(DESTDIR)$(docdir)/$(HTML_APIDOC_DIR)" 75*735d6239SKiyoung Kim 76*735d6239SKiyoung KimDOXYGEN_CLEAN_TARGETS += clean-apidocs 77*735d6239SKiyoung Kimclean-apidocs: 78*735d6239SKiyoung Kim rm -rf $(DOXYGEN_OUTPUT_DIR) 79*735d6239SKiyoung Kim rm -f $(HTML_APIDOC_DIR).tar.gz $(HTML_APIDOC_INTERNALS_DIR).tar.gz 80*735d6239SKiyoung Kim 81*735d6239SKiyoung Kim$(DOXYGEN_UPLOAD): $(DOXYGEN_STAMPS) 82*735d6239SKiyoung Kim find $(DOXYGEN_OUTPUT_DIR) \( -type d -exec chmod a+rx,go-w,g+s {} \; \) \ 83*735d6239SKiyoung Kim -or \( -type f -exec chmod a+r {} \; \) 84*735d6239SKiyoung Kim rsync -avz --progress $(DOXYGEN_OUTPUT_DIR)/$(HTML_APIDOC_DIR)/ sf:/home/users/h/hu/hun/libexif/htdocs/api/ 85*735d6239SKiyoung Kimif ENABLE_INTERNAL_DOCS 86*735d6239SKiyoung Kim rsync -avz --progress $(DOXYGEN_OUTPUT_DIR)/$(HTML_APIDOC_INTERNALS_DIR)/ sf:/home/users/h/hu/hun/libexif/htdocs/internals/ 87*735d6239SKiyoung Kimendif 88*735d6239SKiyoung Kim ssh "sf" "find /home/groups/l/li/libexif/htdocs/internals /home/groups/l/li/libexif/htdocs/api \( -type d -exec chgrp libexif {} \; -exec chmod g+rwxs,a+rx {} \; \) -or \( -type f -exec chgrp libexif {} \; -exec chmod g+rw {} \; \( -name '*.html' -or -name '*.png' -or -name '*.php' -or -name '*.jpg' -or -name '*.css' -name '*.dot' -name '*.map' \) -exec chmod a+r {} \; \)" 89*735d6239SKiyoung Kim 90*735d6239SKiyoung Kimendif # HAVE_DOXYGEN 91*735d6239SKiyoung Kimendif # BUILD_DOCS 92*735d6239SKiyoung Kim 93*735d6239SKiyoung Kim 94*735d6239SKiyoung Kim######################################################################## 95*735d6239SKiyoung Kim# Common part 96*735d6239SKiyoung Kim######################################################################## 97*735d6239SKiyoung Kim 98*735d6239SKiyoung KimEXTRA_DIST = Doxyfile.in Doxyfile-internals.in footer.html README.apidocs $(HTML_APIDOC_DIR).tar.gz 99*735d6239SKiyoung Kim 100*735d6239SKiyoung Kimdoc_DATA = $(DOXYGEN_FILES) 101*735d6239SKiyoung Kim 102*735d6239SKiyoung Kimall-local: $(DOXYGEN_STAMPS) 103*735d6239SKiyoung Kim 104*735d6239SKiyoung Kiminstall-data-local: $(DOXYGEN_INSTALL_TARGETS) 105*735d6239SKiyoung Kim 106*735d6239SKiyoung Kimuninstall-local: $(DOXYGEN_UNINSTALL_TARGETS) 107*735d6239SKiyoung Kim 108*735d6239SKiyoung Kimclean-local: $(DOXYGEN_CLEAN_TARGETS) 109*735d6239SKiyoung Kim 110*735d6239SKiyoung Kimupload: $(DOXYGEN_UPLOAD) 111*735d6239SKiyoung Kim 112*735d6239SKiyoung KimCLEANFILES = $(DOXYGEN_FILES) $(DOXYGEN_STAMPS) 113*735d6239SKiyoung Kim 114