]> git.donarmstrong.com Git - lilypond.git/blob - website.make
Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/lilypond
[lilypond.git] / website.make
1 ################################################################
2 # website (without the rest of the docs)
3
4 ################################################################
5 #####  SECURITY -- check these values for lilypond.org #########
6 ################################################################
7 ifeq ($(WEBSITE_ONLY_BUILD),1)
8   ### for lilypond.org
9   top-src-dir=$(HOME)/src/lilypond
10   depth=.
11   trusted-dir=$(HOME)/lilypond/trusted-scripts
12   script-dir=$(trusted-dir)
13   texi2html-init-file=$(trusted-dir)/lilypond-texi2html.init
14   TEXI2HTML_PROGRAM=$(HOME)/usr/bin/texi2html
15   EXAMPLES=$(HOME)/media/ly-examples/
16   PICTURES=$(HOME)/media/pictures
17 else
18   ### for normal git
19   script-dir=$(top-src-dir)/scripts/build/
20   texi2html-init-file=$(top-src-dir)/Documentation/lilypond-texi2html.init
21   include $(config_make)
22   # I assume this is run from top-build-dir
23   EXAMPLES=Documentation/web/ly-examples/out-www/
24   PICTURES=Documentation/pictures/out-www/
25 endif
26
27
28 ################################################################
29 OUT=out-website
30
31 TEXI2HTML=ONLY_WEB=1 TOP_SRC_DIR=$(top-src-dir) DEPTH=$(depth) PERL_UNICODE=SD $(TEXI2HTML_PROGRAM)
32
33 EXTRACT_TEXI_FILENAMES=python $(script-dir)/extract_texi_filenames.py
34 CREATE_VERSION=python $(script-dir)/create-version-itexi.py
35 CREATE_WEBLINKS=python $(script-dir)/create-weblinks-itexi.py
36
37 SERVER_FILES=$(top-src-dir)/Documentation/web/server/
38
39 # don't include web
40 MANUALS=$(wildcard $(top-src-dir)/Documentation/*.tely)
41 MANUALS+=$(top-src-dir)/Documentation/contributor.texi
42
43 website-test:
44         echo $(TEXI2HTML)
45
46 website-version:
47         mkdir -p $(OUT)
48         $(CREATE_VERSION) $(top-src-dir) > $(OUT)/version.itexi
49         $(CREATE_WEBLINKS) $(top-src-dir) > $(OUT)/weblinks.itexi
50
51 website-xrefs: website-version
52         $(EXTRACT_TEXI_FILENAMES) -I $(top-src-dir)/Documentation/ \
53                 -I $(OUT) -o $(OUT) --split=node \
54                 $(top-src-dir)/Documentation/web.texi
55         $(foreach manual, $(MANUALS), \
56                 $(EXTRACT_TEXI_FILENAMES) -I $(top-src-dir)/Documentation/ \
57                 -I $(OUT) -o $(OUT) $(manual) && ) :
58
59 website-texinfo: website-version website-xrefs
60         $(TEXI2HTML) --prefix=index \
61                 --split=section \
62                 --I=$(top-src-dir)/Documentation/ \
63                 --I=$(OUT) \
64                 --init-file=$(texi2html-init-file) \
65                 -D web_version \
66                 --output=$(OUT)/website/ \
67                 $(top-src-dir)/Documentation/web.texi
68
69 website-css:
70         cp $(top-src-dir)/Documentation/css/*.css $(OUT)/website/
71
72 website-pictures:
73         mkdir -p $(OUT)/website/pictures/
74         cp $(PICTURES)/* $(OUT)/website/pictures/
75         ln -sf website/pictures $(OUT)/pictures
76
77 website-examples:
78         mkdir -p $(OUT)/website/ly-examples
79         cp $(EXAMPLES)/* $(OUT)/website/ly-examples
80
81 website: website-texinfo website-css website-pictures website-examples
82         cp $(SERVER_FILES)/favicon.ico $(OUT)/website/
83         cp $(SERVER_FILES)/lilypond.org.htaccess $(OUT)/website/.htaccess
84         cp $(SERVER_FILES)/robots.txt $(OUT)/website/
85