* Make this makefile compliant with LLVM makefile standards
authorReid Spencer <rspencer@reidspencer.com>
Mon, 29 Nov 2004 04:47:35 +0000 (04:47 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Mon, 29 Nov 2004 04:47:35 +0000 (04:47 +0000)
* Implement optional doxygen doc generation
* Implement HTML and doxygen installation

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18324 91177308-0d34-0410-b5e6-96231b3b80d8

docs/Makefile

index 38d3c801e9f5559852d7d8eabe5e5a71fea80523..d51d3570e34720ca28d097162d6c3dd3d94d7dce 100644 (file)
@@ -6,9 +6,57 @@
 # the University of Illinois Open Source License. See LICENSE.TXT for details.
 # 
 ##===----------------------------------------------------------------------===##
-doxygen-files:
-       doxygen doxygen.cfg
 
-doxygen.tar.gz: doxygen/index.html
-       rm -rf $@
-       gtar czvf $@ doxygen
+LEVEL      := ..
+DIRS       := CommandGuide
+
+include $(LEVEL)/Makefile.common
+
+HTML       := $(wildcard $(BUILD_SRC_DIR)/*.html) \
+              $(wildcard $(BUILD_SRC_DIR)/*.css)
+IMAGES     := $(wildcard $(BUILD_SRC_DIR)/img/*.*)
+DOXYFILES  := $(wildcard $(BUILD_SRC_DIR)/doxygen.*)
+EXTRA_DIST := $(HTML) $(DOXYFILES) llvm.css CommandGuide img
+
+.PHONY: install-html install-doxygen doxygen
+
+ifeq ($(ENABLE_DOXYGEN),1)
+install-local:: install-html install-doxygen
+else
+install-local:: install-html
+endif
+
+install-html: $(BUILD_OBJ_DIR)/html.tar.gz
+       $(Echo) Installing HTML documentation
+       $(Verb) $(INSTALL) -d $(LLVM_DOCSDIR)/html
+       $(Verb) $(INSTALL) -d $(LLVM_DOCSDIR)/html/img
+       $(Verb) $(INSTALL) -C $(HTML) $(LLVM_DOCSDIR)/html
+       $(Verb) $(INSTALL) -C $(IMAGES) $(LLVM_DOCSDIR)/html/img
+       $(Verb) $(INSTALL) -C $(BUILD_OBJ_DIR)/html.tar.gz $(LLVM_DOCSDIR)
+
+$(BUILD_OBJ_DIR)/html.tar.gz: $(HTML)
+       $(Echo) Packaging HTML documentation
+       $(Verb) $(RM) -rf $@ $(BUILD_OBJ_DIR)/html.tar
+       $(Verb) cd $(BUILD_SRC_DIR) && \
+         $(TAR) cf $(BUILD_OBJ_DIR)/html.tar *.html
+       $(Verb) $(GZIP) $(BUILD_OBJ_DIR)/html.tar
+
+install-doxygen: doxygen
+       $(Echo) Installing doxygen documentation
+       $(Echo) Installing doxygen documentation
+       $(Verb) $(INSTALL) -d $(LLVM_DOCSDIR)/html/doxygen
+       $(Verb) $(INSTALL) $(BUILD_OBJ_DIR)/doxygen.tar.gz $(LLVM_DOCSDIR)
+       $(Verb) cd $(BUILD_OBJ_DIR)/doxygen && \
+         $(FIND) . -type f -exec \
+           $(INSTALL) -C {} $(LLVM_DOCSDIR)/html/doxygen \;
+
+doxygen: $(BUILD_OBJ_DIR)/doxygen.tar.gz
+
+$(BUILD_OBJ_DIR)/doxygen.tar.gz: $(DOXYFILES) $(BUILD_OBJ_DIR)/doxygen.cfg
+       $(Echo) Building doxygen documentation
+       $(Verb) $(DOXYGEN) $(BUILD_OBJ_DIR)/doxygen.cfg
+       $(Echo) Packaging doxygen documentation
+       $(Verb) $(RM) -rf $@ $(BUILD_OBJ_DIR)/doxygen.tar
+       $(Verb) $(TAR) cf $(BUILD_OBJ_DIR)/doxygen.tar doxygen
+       $(Verb) $(GZIP) $(BUILD_OBJ_DIR)/doxygen.tar
+