add is_unknown_entity(), is_unknown_type(), is_none_type()
[libfirm] / Makefile
index 745b737..49433fe 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -14,11 +14,13 @@ variant      ?= debug
 
 srcdir       ?= $(top_srcdir)
 builddir     ?= $(top_builddir)/$(variant)
+docdir       ?= $(top_builddir)/firm-doc
 
 # This hides the noisy commandline outputs. You can see them with "make Q="
 Q ?= @
 
 CC ?= cc
+DOXYGEN ?= doxygen
 LINK ?= $(CC)
 AR ?= ar
 DLLEXT ?= .so
@@ -176,6 +178,19 @@ $(builddir)/%.o: %.c $(IR_SPEC_GENERATED_FILES) config.h
        @echo CC $@
        $(Q)$(CC) $(CFLAGS) $(CPPFLAGS) $(libfirm_CPPFLAGS) -MMD -c -o $@ $<
 
+$(docdir)/libfirm.tag: $(IR_SPEC_GENERATED_FILES) Doxyfile $(wildcard include/libfirm/*.h) $(wildcard include/libfirm/adt/*.h)
+       @echo Doxygen
+       $(Q)$(DOXYGEN)
+
+DOCU_GENERATOR := scripts/gen_docu.py
+$(docdir)/html/nodes.html: $(docdir)/libfirm.tag $(DOCU_GENERATOR) $(IR_SPEC) scripts/spec_util.py scripts/style.css
+       @echo gen_docu.py
+       $(Q)$(DOCU_GENERATOR) $(docdir)/libfirm.tag "" $@
+       $(Q)cp scripts/style.css $(docdir)/html
+
+.PHONY: documentation
+documentation: $(docdir)/libfirm.tag $(docdir)/html/nodes.html
+
 .PHONY: clean
 clean:
        @echo CLEAN