rust/mk/docs.mk

63 lines
1.9 KiB
Makefile
Raw Normal View History

2011-05-01 22:18:52 +02:00
######################################################################
# Doc variables and rules
######################################################################
doc/keywords.texi: $(S)doc/keywords.txt $(S)src/etc/gen-keywords-table.py
@$(call E, gen-keywords-table: $@)
$(Q)$(S)src/etc/gen-keywords-table.py
doc/version.texi: $(MKFILE_DEPS) rust.texi
2011-06-25 21:23:27 +02:00
@$(call E, version-stamp: $@)
$(Q)echo "@macro gitversion" >$@
$(Q)echo "$(CFG_VERSION)" >>$@
$(Q)echo "@end macro" >>$@
2011-05-01 22:18:52 +02:00
2011-12-30 21:47:43 +01:00
GENERATED += doc/keywords.texi doc/version.texi
doc/%.pdf: %.texi doc/version.texi doc/keywords.texi
2011-06-25 21:23:27 +02:00
@$(call E, texi2pdf: $@)
@# LC_COLLATE=C works around a bug in texi2dvi; see
@# https://bugzilla.redhat.com/show_bug.cgi?id=583011 and
@# https://github.com/graydon/rust/issues/1134
$(Q)LC_COLLATE=C texi2pdf --silent --batch -I doc -o $@ --clean $<
2011-05-01 22:18:52 +02:00
doc/%.html: %.texi doc/version.texi doc/keywords.texi
2011-06-25 21:23:27 +02:00
@$(call E, makeinfo: $@)
$(Q)makeinfo -I doc --html --ifhtml --force --no-split --output=$@ $<
2011-05-01 22:18:52 +02:00
docsnap: doc/rust.pdf
2011-06-25 21:23:27 +02:00
@$(call E, snap: doc/rust-$(shell date +"%Y-%m-%d")-snap.pdf)
$(Q)mv $< doc/rust-$(shell date +"%Y-%m-%d")-snap.pdf
define libdoc
doc/$(1)/index.html: nd/$(1)/Languages.txt nd/$(1)/Topics.txt \
nd/$(1)/lib.css $(2)
@$$(call E, naturaldocs: $$@)
naturaldocs -i $(S)src/lib$(1) -o HTML doc/$(1) -p nd/$(1) -r -s Default lib
nd/$(1)/Languages.txt: $(S)doc/Languages.txt
@$$(call E, cp: $$@)
$(Q)cp $$< $$@
nd/$(1)/Topics.txt: $(S)doc/Topics.txt
@$$(call E, cp: $$@)
$(Q)cp $$< $$@
nd/$(1)/lib.css: $(S)doc/lib.css
@$$(call E, cp: $$@)
$(Q)cp $$< $$@
2011-12-30 21:47:43 +01:00
GENERATED += nd/$(1)/Languages.txt \
nd/$(1)/Topics.txt \
nd/$(1)/Menu.txt \
nd/$(1)/Data
DOCS += doc/$(1)/index.html nd/$(1)/lib.css
2011-12-30 21:47:43 +01:00
endef
$(eval $(call libdoc,core,$(CORELIB_CRATE) $(CORELIB_INPUTS)))
$(eval $(call libdoc,std,$(STDLIB_CRATE) $(STDLIB_INPUTS)))
2011-12-30 21:47:43 +01:00
docs: $(DOCS)