X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=make%2Fwebsite.make;h=62ca4b803d71f74d40d5a68c1db593c7428f1903;hb=4ccfb61ecfa8b32f8c5d87e75c569171bbc54ba6;hp=dc21c6e15229e3c4619bff62a4fff6d6071e519f;hpb=3b881f5d8398776d110a55269fb5ed49b9829f47;p=lilypond.git diff --git a/make/website.make b/make/website.make index dc21c6e152..62ca4b803d 100644 --- a/make/website.make +++ b/make/website.make @@ -4,9 +4,10 @@ ################################################################ ##### SECURITY -- check these values for lilypond.org ######### ################################################################ + ifeq ($(WEBSITE_ONLY_BUILD),1) ### for lilypond.org - TOP_SRC_DIR=$(HOME)/src/lilypond + TOP_SRC_DIR=$(HOME)/lilypond/lilypond-git TRUSTED_DIR=$(HOME)/lilypond/trusted-scripts top-src-dir=$(TOP_SRC_DIR) depth=. @@ -16,27 +17,47 @@ ifeq ($(WEBSITE_ONLY_BUILD),1) top-htaccess=$(trusted-dir)/lilypond.org.htaccess dir-htaccess=$(trusted-dir)/website-dir.htaccess TEXI2HTML_PROGRAM=$(HOME)/usr/bin/texi2html - EXAMPLES=$(HOME)/media/ly-examples/ - PICTURES=$(HOME)/media/pictures + EXAMPLES=$(HOME)/lilypond/media/ly-examples + PICTURES=$(HOME)/lilypond/media/pictures else ### for normal git - script-dir=$(top-src-dir)/scripts/build/ + script-dir=$(top-src-dir)/scripts/build texi2html-init-file=$(top-src-dir)/Documentation/lilypond-texi2html.init top-htaccess=$(top-src-dir)/Documentation/web/server/lilypond.org.htaccess dir-htaccess=$(top-src-dir)/Documentation/web/server/website-dir.htaccess include $(config_make) # I assume this is run from top-build-dir - EXAMPLES=Documentation/web/ly-examples/out-www/ - PICTURES=Documentation/pictures/out-www/ + EXAMPLES=Documentation/web/ly-examples/out-www + PICTURES=Documentation/pictures/out-www +endif + +################################################################ +#The 4 lines below present an option to force make website to run +# quietly only when it is run as make -s website. However, we've +# decided not to use this switch, and run the scripts quietly all +# the time +################################################################ +#quiet-run = $(findstring s, $(MAKEFLAGS)) +#ifeq ($(quiet-run),s) +# quiet-flag=-q +#endif + +#Nothing clever here - just allows the use of a boolean to control +# quiet running +quiet-run = true +ifeq ($(quiet-run),true) + quiet-flag=-q endif + ################################################################ OUT=out-website ### only update this when the language compiles correctly! -#WEB_LANGS = es fr nl -WEB_LANGS = es +# LANGUAGES = (site, cs, de, es, fr, hu, it, ja, nl, zh) +#WEB_LANGS = de es fr hu it ja nl zh cs +WEB_LANGS = cs de es fr hu it ja nl zh TEXI2HTML=ONLY_WEB=1 TOP_SRC_DIR=$(top-src-dir) DEPTH=$(depth) PERL_UNICODE=SD $(TEXI2HTML_PROGRAM) @@ -45,8 +66,9 @@ CREATE_VERSION=python $(script-dir)/create-version-itexi.py CREATE_WEBLINKS=python $(script-dir)/create-weblinks-itexi.py MASS_LINK=python $(script-dir)/mass-link.py WEB_POST=python $(script-dir)/website_post.py +WEB_BIBS=python $(script-dir)/bib2texi.py -SERVER_FILES=$(top-src-dir)/Documentation/web/server/ +SERVER_FILES=$(top-src-dir)/Documentation/web/server # don't include web MANUALS=$(wildcard $(top-src-dir)/Documentation/*.tely) @@ -61,24 +83,18 @@ website-version: $(CREATE_WEBLINKS) $(top-src-dir) > $(OUT)/weblinks.itexi website-xrefs: website-version - $(EXTRACT_TEXI_FILENAMES) -I $(top-src-dir)/Documentation/ \ - -I $(OUT) -o $(OUT) --split=node \ - $(top-src-dir)/Documentation/web.texi - # normal manuals - for m in $(MANUALS); do \ - b=`basename "$$m" .texi`; \ - d=`basename "$$b" .tely`; \ - $(EXTRACT_TEXI_FILENAMES) \ - -I $(top-src-dir)/Documentation/ \ - -I $(top-src-dir)/Documentation/"$$d"/ \ - -I $(OUT) -o $(OUT) "$$m" ; \ - done - # translations - for l in $(WEB_LANGS); do \ + for l in '' $(WEB_LANGS); do \ + len="$${#l}" ; \ + r="$$l"; \ + if [ "$$len" -gt "0" ] ; then \ + r="$$r"/; \ + fi ; \ $(EXTRACT_TEXI_FILENAMES) \ - -I $(top-src-dir)/Documentation/ \ + -I $(top-src-dir)/Documentation \ -I $(top-src-dir)/Documentation/"$$l" \ -I $(OUT) -o $(OUT) --split=node \ + --known-missing-files=$(top-src-dir)/scripts/build/website-known-missing-files.txt \ + $(quiet-flag) \ $(top-src-dir)/Documentation/"$$l"/web.texi ;\ for m in $(MANUALS); do \ n=`echo "$$m" | sed 's/Documentation/Documentation\/'$$l'/'` ; \ @@ -86,59 +102,75 @@ website-xrefs: website-version d=`basename "$$b" .tely`; \ if [ -e "$$n" ] ; then \ $(EXTRACT_TEXI_FILENAMES) \ - -I $(top-src-dir)/Documentation/ \ + -I $(top-src-dir)/Documentation \ -I $(top-src-dir)/Documentation/"$$l" \ - -I $(top-src-dir)/Documentation/"$$l"/"$$d"/ \ + -I $(top-src-dir)/Documentation/"$$r""$$d" \ + --known-missing-files=$(top-src-dir)/scripts/build/website-known-missing-files.txt \ + $(quiet-flag) \ -I $(OUT) -o $(OUT) "$$n" ; \ fi ; \ done; \ done; - - -website-texinfo: website-version website-xrefs - $(TEXI2HTML) --prefix=index \ - --split=section \ - --I=$(top-src-dir)/Documentation/ \ - --I=$(OUT) \ - --init-file=$(texi2html-init-file) \ - -D web_version \ - --output=$(OUT)/website/ \ - $(top-src-dir)/Documentation/web.texi - # translations - for l in $(WEB_LANGS); do \ +website-bibs: website-version + BSTINPUTS=$(top-src-dir)/Documentation/web \ + $(WEB_BIBS) -s web \ + -s $(top-src-dir)/Documentation/lily-bib \ + -o $(OUT)/others-did.itexi \ + $(quiet-flag) \ + $(top-src-dir)/Documentation/web/others-did.bib + BSTINPUTS=$(top-src-dir)/Documentation/web \ + $(WEB_BIBS) -s web \ + -s $(top-src-dir)/Documentation/lily-bib \ + -o $(OUT)/we-wrote.itexi \ + $(quiet-flag) \ + $(top-src-dir)/Documentation/web/we-wrote.bib + + +website-texinfo: website-version website-xrefs website-bibs + for l in '' $(WEB_LANGS); do \ + if test -n "$$l"; then \ + langopt=--lang="$$l"; \ + langsuf=.$$l; \ + fi; \ $(TEXI2HTML) --prefix=index \ --split=section \ --I=$(top-src-dir)/Documentation/"$$l" \ - --I=$(top-src-dir)/Documentation/ \ + --I=$(top-src-dir)/Documentation \ --I=$(OUT) \ - --lang="$$l" \ + $$langopt \ --init-file=$(texi2html-init-file) \ -D web_version \ --output=$(OUT)/"$$l" \ $(top-src-dir)/Documentation/"$$l"/web.texi ; \ - find $(OUT)/$$l/ -name '*.html' | xargs grep -L 'UNTRANSLATED NODE: IGNORE ME' | sed 's!$(OUT)/'$$l'/!!g' | xargs $(MASS_LINK) --prepend-suffix .$$l hard $(OUT)/$$l/ $(OUT)/website/ ; \ + ls $(OUT)/$$l/*.html | xargs grep -L 'UNTRANSLATED NODE: IGNORE ME' | sed 's!$(OUT)/'$$l'/!!g' | xargs $(MASS_LINK) --prepend-suffix="$$langsuf" hard $(OUT)/$$l/ $(OUT)/website/ ; \ done website-css: - cp $(top-src-dir)/Documentation/css/*.css $(OUT)/website/ + cp $(top-src-dir)/Documentation/css/*.css $(OUT)/website website-pictures: - mkdir -p $(OUT)/website/pictures/ - cp $(PICTURES)/* $(OUT)/website/pictures/ - ln -sf website/pictures $(OUT)/pictures + mkdir -p $(OUT)/website/pictures + if [ -d $(PICTURES) ]; \ + then \ + cp $(PICTURES)/* $(OUT)/website/pictures ; \ + ln -sf website/pictures $(OUT)/pictures ;\ + fi website-examples: mkdir -p $(OUT)/website/ly-examples - cp $(EXAMPLES)/* $(OUT)/website/ly-examples + if [ -d $(EXAMPLES) ]; \ + then \ + cp $(EXAMPLES)/* $(OUT)/website/ly-examples ; \ + fi web-post: - $(WEB_POST) $(OUT)/website/ + $(WEB_POST) $(OUT)/website website: website-texinfo website-css website-pictures website-examples web-post - cp $(SERVER_FILES)/favicon.ico $(OUT)/website/ - cp $(SERVER_FILES)/robots.txt $(OUT)/website/ + cp $(SERVER_FILES)/favicon.ico $(OUT)/website + cp $(SERVER_FILES)/robots.txt $(OUT)/website cp $(top-htaccess) $(OUT)/.htaccess cp $(dir-htaccess) $(OUT)/website/.htaccess