]> git.donarmstrong.com Git - lilypond.git/commitdiff
Merge branch 'master' into dev/texi2html
authorReinhold Kainhofer <reinhold@kainhofer.com>
Fri, 29 Aug 2008 19:11:07 +0000 (21:11 +0200)
committerReinhold Kainhofer <reinhold@kainhofer.com>
Fri, 29 Aug 2008 19:11:07 +0000 (21:11 +0200)
Conflicts:

stepmake/stepmake/texinfo-vars.make

1  2 
Documentation/user/GNUmakefile
GNUmakefile.in
stepmake/stepmake/generic-targets.make
stepmake/stepmake/texinfo-rules.make
stepmake/stepmake/texinfo-targets.make
stepmake/stepmake/texinfo-vars.make

index 5d7affd551c9cf067a1dd543d99449cc6ec63adc,243c16441354cd0d6c9181f61a6cb2da186a8e40..eacbf70f241df48627a285b1a31a702d309b514c
@@@ -16,16 -16,11 +16,16 @@@ OUT_PNG_IMAGES=$(OUT_PDF_IMAGES:%.pdf=%
  
  OUT_TEXI_FILES=$(ITEXI_FILES:%.itexi=$(outdir)/%.texi)\
   $(ITELY_FILES:%.itely=$(outdir)/%.texi)
 +
 +MASTER_TEXI_FILES = $(TELY_FILES:%.tely=$(outdir)/%.texi)\
 + $(outdir)/lilypond-internals.texi
 +
  HTML_FILES = $(TELY_FILES:%.tely=$(outdir)/%-big-page.html)\
   $(outdir)/lilypond-internals-big-page.html
  
  # todo: add latex.
 -PDF_FILES = $(TELY_FILES:%.tely=$(outdir)/%.pdf)
 +PDF_FILES = $(TELY_FILES:%.tely=$(outdir)/%.pdf)\
 + $(outdir)/lilypond-internals.pdf
  
  MAIN_INFO_DOC = lilypond
  INFO_DOCS = lilypond lilypond-internals music-glossary lilypond-program lilypond-learning
@@@ -52,11 -47,6 +52,6 @@@ info: $(INFO_FILES
  xml: $(outdir)/lilypond/lilypond.xml $(outdir)/lilypond-internals/lilypond-internals.xml
  
  
- # All web targets, except info image symlinks and info docs are
- # installed in non-recursing target from TOP-SRC-DIR
- local-install-WWW: local-install-info
- local-uninstall-WWW: local-uninstall-info
  local-clean:
        rm -f $(INFO_IMAGES_DIR)
  
@@@ -68,6 -58,8 +63,6 @@@ extra-local-help
    xml       update Docbook xml documentation\n\
  "
  
 -# Generic rule using % twice not possible?
 -# $(outdir)/%/%.html: $(outdir)/%.texi
  $(outdir)/lilypond.texi: $(outdir)/lilypond-internals.texi
  
  #
@@@ -115,7 -107,7 +110,7 @@@ DEEP_HTML_FILES =
  
  # Symlinks to refer to external source documents from split and non-split HTML
  source-links = $(outdir)/source $(outdir)/lilypond/source $(outdir)/music-glossary/source \
 - $(outdir)/lilypond-program/source $(outdir)/lilypond-learning/source
 + $(outdir)/lilypond-program/source $(outdir)/lilypond-learning/source $(outdir)/lilypond-internals/source
  
  $(outdir)/source:
        @rm -f $(@)
@@@ -126,13 -118,13 +121,13 @@@ $(outdir)/%/source
        mkdir -p $(dir $@)
        ln -sf $(depth)/.. $(@)
  
 -local-WWW: $(HTML_FILES) $(DEEP_HTML_FILES)\
 - $(datafiles) $(PDF_FILES) $(source-links) info
 +local-WWW-1: $(MASTER_TEXI_FILES) $(PDF_FILES) info
 +
 +local-WWW-2: $(HTML_FILES) $(DEEP_HTML_FILES) $(source-links)
  
  $(outdir)/%.bib: %.bib
        ln -f $< $@
  
 -
  # lilypond.texi deps
  $(top-build-dir)/mf/$(outconfbase)/feta16list.ly:
        $(MAKE) -C $(top-src-dir)/mf
@@@ -149,4 -141,9 +144,4 @@@ $(outdir)/lilypond.texi $(outdir)/lilyp
  $(outdir)/lilypond-internals.texi: $(LILYPOND_BINARY)
        cd $(outdir) && $(LILYPOND_BINARY) --verbose $(top-src-dir)/ly/generate-documentation
  
 -
 -## unused
 -$(outdir)/interfaces.itexi: dummy
 -      cd $(outdir) && lilypond $(top-src-dir)/ly/generate-interface-doc
 -
  .SECONDARY:
diff --combined GNUmakefile.in
index aa7d227c592cb7615d2099cbfa3618441883a9f4,146d3af083ca3611ce9e53c3dfd005d346a55264..0e30f80d3c5c8618ff019dead2226fb96bee37a4
@@@ -51,22 -51,26 +51,26 @@@ dist-toplevel-txt-files
  doc: 
        $(MAKE) -C Documentation
  
+ install-help2man:
+       $(MAKE) -C scripts man install-help2man
+       $(MAKE) -C lily man install-help2man
+ # All web targets, except info image symlinks and info docs are
+ # installed in non-recursing target from TOP-SRC-DIR
  install-WWW:
        -$(INSTALL) -m 755 -d $(DESTDIR)$(webdir)
        rsync -rl $(outdir)/offline-root/ $(DESTDIR)$(webdir)
-       $(MAKE) -C Documentation/user local-install-WWW
        $(MAKE) -C Documentation/user install-info
        $(MAKE) -C input/lsr install-info
  
- install-help2man:
-       $(MAKE) -C scripts man install-help2man
-       $(MAKE) -C lily man install-help2man
  web-install:
        $(MAKE) out=www install-WWW
  
  uninstall-WWW:
-       echo TODO
+       rm -rf $(DESTDIR)$(webdir)
+       -rmdir $(package_docdir)
+       $(MAKE) -C Documentation/user uninstall
+       $(MAKE) -C input/lsr uninstall
  
  web-uninstall:
        $(MAKE) out=www uninstall-WWW
@@@ -82,12 -86,12 +86,12 @@@ final-install
  # For both online and offline docs, issue `make web WEB_TARGETS="offline online"'
  WEB_TARGETS = offline
  
 -local-WWW-post:
 +WWW-post:
  # need UTF8 setting in case this is hosted on a website. 
        echo -e 'AddDefaultCharset utf-8\nAddCharset utf-8 .html\nAddCharset utf-8 .en\nAddCharset utf-8 .nl\nAddCharset utf-8 .txt\n' > $(top-build-dir)/.htaccess
        $(PYTHON) $(buildscript-dir)/mutopia-index.py -o $(outdir)/examples.html input/
        find $(outdir) -name '*-root' | xargs rm -rf
 -      $(PYTHON) $(buildscript-dir)/www_post.py $(PACKAGE_NAME) $(TOPLEVEL_VERSION) $(buildscript-dir) $(outdir) "$(WEB_TARGETS)"
 +      $(PYTHON) $(buildscript-dir)/www_post.py $(PACKAGE_NAME) $(TOPLEVEL_VERSION) $(outdir) "$(WEB_TARGETS)"
        find $(outdir)/offline-root -type l -delete
  
  
index 2df68ac3ca29746669b2677956ba5f3548cfa5f7,2fe267ed44f180de2f311f0b4e7e788f88e212f6..b73dfa56b05423981b66104d1ffb195854578560
@@@ -1,6 -1,5 +1,6 @@@
 -.PHONY : all clean bin-clean config default dist doc exe help\
 -         html lib TAGS po
 +.PHONY : all clean bin-clean config default dist doc exe help html lib TAGS\
 +       po web web-1 WWW-1 WWW-2 WWW-post local-WWW-1 local-WWW-2\
 +       web-install
  
  all:   default
        $(LOOP)
@@@ -64,6 -63,7 +64,7 @@@ help: generic-help local-hel
    exe         update all executables\n\
    help        this help\n\
    install *   install programs and data (prefix=$(prefix))\n\
+   uninstall*  uninstall programs and data\n\
    lib         update all libraries\n\
    web *       update website in directory \`out-www'\n\
    web-install * install website documentation in (webdir=$(webdir))\n\
@@@ -169,31 -169,21 +170,30 @@@ $(config_make): $(top-src-dir)/configur
        touch $@                # do something for multiple simultaneous configs.
  
  
 -################ website.
 +#### Documentation (website and tarball)
  
 -local-WWW:
 -local-WWW-post:
 +# documentation is built in two stages,
 +# plus WWW-post (only at toplevel)
 +# see INSTALL for more information.
 +
 +local-WWW-1:
 +local-WWW-2:
  web-install:
 +WWW-post:
  
 -WWW: local-WWW
 +WWW-1: local-WWW-1
        $(LOOP)
  
 -WWW-post: local-WWW-post
 +WWW-2: local-WWW-2
        $(LOOP)
  
  web:
 -      $(MAKE) out=www WWW
 +      $(MAKE) out=www WWW-1
 +      $(MAKE) out=www WWW-2
        $(MAKE) out=www WWW-post
  
 +web-1:
 +      $(MAKE) out=www WWW-1
 +
  web-clean:
-       find -name out-www | xargs rm -rf
        $(MAKE) out=www clean
index b44b6300ec23d082960eece70ea257bf228566ed,328ef02412861c61cd746d32d0559e4c95a7ffe1..5a2b2245481c116cfb82dadf16b58d5180b7bbaf
@@@ -13,7 -13,7 +13,7 @@@
  # prerequisite, otherwise %.info are always outdated (because older
  # than $(outdir), hence this .dep file
  
- $(outdir)/$(INFO_IMAGES_DIR).info-images-dir.dep: $(INFO_DOCS:%=$(outdir)/%.texi)
+ $(outdir)/$(INFO_IMAGES_DIR).info-images-dir-dep: $(INFO_DOCS:%=$(outdir)/%.texi)
  ifneq ($(INFO_IMAGES_DIR),)
        rm -f $(INFO_IMAGES_DIR)
        ln -s $(outdir) $(INFO_IMAGES_DIR)
  endif
        touch $@
  
- $(outdir)/%.info: $(outdir)/%.texi $(outdir)/$(INFO_IMAGES_DIR).info-images-dir.dep $(outdir)/version.itexi
+ $(outdir)/%.info: $(outdir)/%.texi $(outdir)/$(INFO_IMAGES_DIR).info-images-dir-dep $(outdir)/version.itexi
        $(MAKEINFO) -I$(outdir) --output=$@ $<
  
 -$(outdir)/%-big-page.html: $(outdir)/%.texi $(outdir)/version.itexi
 -      $(MAKEINFO) -I $(outdir) --output=$@ --css-include=$(top-src-dir)/Documentation/texinfo.css --html --no-split -D bigpage --no-headers $<
 +$(outdir)/%-big-page.html: $(outdir)/%.texi $(XREF_MAPS_DIR)/%.xref-map $(outdir)/version.itexi
 +      $(TEXI2HTML) --I=$(outdir) -D bigpage --output=$@ $(TEXI2HTML_INIT) $< 
 +      cp $(top-src-dir)/Documentation/lilypond*.css $(dir $@)
  
 -$(outdir)/%.html: $(outdir)/%.texi $(outdir)/version.itexi
 -      $(MAKEINFO) -I $(outdir) --output=$@ --css-include=$(top-src-dir)/Documentation/texinfo.css --html --no-split --no-headers $<
 +
 +$(outdir)/%.html: $(outdir)/%.texi $(XREF_MAPS_DIR)/%.xref-map $(outdir)/version.itexi
 +      $(TEXI2HTML) --I=$(outdir) --output=$@ $(TEXI2HTML_INIT) $<
 +      cp $(top-src-dir)/Documentation/lilypond*.css $(dir $@)
  
  $(outdir)/%.html.omf: %.texi
        $(call GENERATE_OMF,html)
@@@ -44,10 -41,9 +44,10 @@@ $(outdir)/%.pdf.omf: %.tex
  $(outdir)/%.ps.gz.omf: %.texi
        $(call GENERATE_OMF,ps.gz)
  
 -$(outdir)/%/index.html: $(outdir)/%.texi $(outdir)/version.itexi
 +$(outdir)/%/index.html: $(outdir)/%.texi $(XREF_MAPS_DIR)/%.xref-map $(outdir)/version.itexi
        mkdir -p $(dir $@)
 -      $(MAKEINFO) -I $(outdir) --output=$(dir $@) --css-include=$(top-src-dir)/Documentation/texinfo.css --html $<
 +      $(TEXI2HTML) --I=$(outdir) --output=$(dir $@) --prefix=index --split=section $(TEXI2HTML_INIT) $<
 +      cp $(top-src-dir)/Documentation/lilypond*.css $(dir $@)
  
  $(outdir)/%.pdf: $(outdir)/%.texi $(outdir)/version.itexi
        cd $(outdir); texi2pdf $(TEXI2PDF_FLAGS) --batch $(TEXINFO_PAPERSIZE_OPTION) $(<F)
@@@ -59,13 -55,10 +59,14 @@@ $(outdir)/%.texi: %.tex
        rm -f $@
        cp $< $@
  
 +$(XREF_MAPS_DIR)/%.xref-map: $(outdir)/%.texi
 +      $(PYTHON) $(buildscript-dir)/extract_texi_filenames.py -o $(XREF_MAPS_DIR) $<
 +
 +
  $(outdir)/version.%: $(top-src-dir)/VERSION
        echo '@macro version'> $@
        echo $(TOPLEVEL_VERSION)>> $@
        echo '@end macro'>> $@
  
- .SECONDARY: $(outdir)/version.itexi $(outdir)/version.texi
+ .SECONDARY: $(outdir)/version.itexi $(outdir)/version.texi \
+   $(outdir)/$(INFO_IMAGES_DIR).info-images-dir-dep
index 75365a2e7dd88ed03d4eed33624d82223200e3d8,a202bea7b976986c49d2f21a4af7c8d8ebb4cbe6..492e1f636621a137c5687a030bf25664a5fac420
@@@ -2,7 -2,7 +2,7 @@@
  
  default: $(INFO_FILES)
  
 -local-WWW: $(addprefix $(outdir)/,$(TEXI_FILES:.texi=.html))
 +local-WWW-1: $(XREF_MAPS_FILES)
  
  local-doc: $(OUTTXT_FILES)
  
@@@ -31,12 -31,12 +31,12 @@@ ifeq ($(out),www
  # This builds all .info targets with images, in out-www.
  # Viewable with a recent Emacs, doing: C-u C-h i out-www/lilypond.info
  
- local-install-info: info
-       -$(INSTALL) -d $(DESTDIR)$(infodir)
  ifneq ($(patsubst %/local,%,$(DESTDIR)$(prefix)),/usr)
  ## Can not have absolute symlinks because some binary packages build schemes
  ## install files in nonstandard root.  Best we can do is to notify the
  ## builder or packager.
+ local-install-info: info
+       -$(INSTALL) -d $(DESTDIR)$(infodir)
        @echo
        @echo "***************************************************************"
        @echo "Please add or update the LilyPond direntries, do"
        @echo "    (cd $(infodir) && ln -sfT ../doc/lilypond/html/$(DEST_INFO_IMAGES_SUBDIR) $(INFO_IMAGES_DIR))"
        @echo "or add something like that to the postinstall script."
        @echo
+ local-uninstall-info:
+       -rmdir $(DESTDIR)$(infodir)
  else # installing directly into standard /usr/...
+ local-install-info: info
        -$(INSTALL) -d $(DESTDIR)$(infodir)
        $(foreach f,$(INFO_FILES),install-info --remove --info-dir=$(infodir) $(f) ; )true
        install-info --info-dir=$(infodir) $(outdir)/$(MAIN_INFO_DOC).info
        cd $(infodir) && ln -sfT $(webdir)/$(DEST_INFO_IMAGES_SUBDIR) $(INFO_IMAGES_DIR)
- endif # installing directly into standard /usr/...
  
- local-uninstall-WWW:
+ local-uninstall-info:
+       $(foreach f,$(INFO_FILES),install-info --remove --info-dir=$(infodir) $(f) ; )true
        rm -f $(infodir)/$(INFO_IMAGES_DIR)
  
+ endif # installing directly into standard /usr/...
  else # out!=www
  
  ifneq ($(patsubst %/local,%,$(DESTDIR)$(prefix)),/usr)
@@@ -65,7 -72,7 +72,7 @@@
  ## install files in nonstandard root.  Best we can do is to notify the
  ## builder or packager.
  local-install-info: info
-       -$(INSTALL) -d $(DESTDIR)$(package_infodir)
+       -$(INSTALL) -d $(DESTDIR)$(infodir)
        @echo
        @echo "***************************************************************"
        @echo "Please add or update the LilyPond direntries, do"
        @echo
  
  local-uninstall-info:
-       -rmdir $(DESTDIR)$(package_infodir)
+       -rmdir $(DESTDIR)$(infodir)
  
  else # installing directly into standard /usr/...
  local-install-info: info
-       -$(INSTALL) -d $(DESTDIR)$(package_infodir)
        -$(INSTALL) -d $(DESTDIR)$(infodir)
        $(foreach f,$(INFO_FILES),install-info --remove --info-dir=$(infodir) $(f) ; )true
        install-info --info-dir=$(infodir) $(outdir)/$(MAIN_INFO_DOC).info
  
  local-uninstall-info:
        $(foreach f,$(INFO_FILES),install-info --remove --info-dir=$(infodir) $(f) ; )true
-       -rmdir $(DESTDIR)$(infodir)
-       -rmdir $(DESTDIR)$(package_infodir)
  
  endif # installing into standard /usr/* root
  
index 1a67332d4bdcca35adc0c8ba8870d6611bc005d9,a3d706f1f794aaa6811fba6d9121b502a39a7788..dcfa5e63b947758070ce6ffdf9959fe8575464ac
@@@ -1,3 -1,4 +1,3 @@@
 -
  TEXI_FILES = $(call src-wildcard,*.texi)
  
  ALL_SOURCES += $(TEXI_FILES)
@@@ -13,20 -14,9 +13,22 @@@ TEXINFO_PAPERSIZE_OPTION= $(if $(findst
  MAKEINFO_FLAGS = --enable-encoding
  MAKEINFO = LANG= $(MAKEINFO_PROGRAM) $(MAKEINFO_FLAGS)
  
 +# texi2html xref map files
 +XREF_MAPS_DIR=$(top-build-dir)/out/xref-maps
 +XREF_MAPS_FILES=$(INFO_DOCS:%=$(XREF_MAPS_DIR)/%.xref-map)
 +
 +# texi2html flags
 +ifneq ($(ISOLANG),) 
 +TEXI2HTML_LANG = --lang=$(ISOLANG)
 +endif
 +TEXI2HTML_FLAGS += --css-ref=lilypond.css $(DOCUMENTATION_INCLUDES) \
 +  --I=$(XREF_MAPS_DIR)
 +TEXI2HTML_INIT = --init-file=$(top-src-dir)/lilypond-texi2html.init
 +TEXI2HTML = $(TEXI2HTML_PROGRAM) $(TEXI2HTML_FLAGS) $(TEXI2HTML_LANG)
 +
+ ifdef QUIET_BUILD
  TEXI2PDF_FLAGS += -q
+ endif
  
  # info stuff
  INFO_INSTALL_FILES = $(wildcard $(addsuffix *, $(INFO_FILES)))