1- .PHONY: docs docsclean checkref checkref_en checkref_es checkref_fr checkref_vi checkref_zh_CN
1+ .PHONY: docs docsclean checkref checkref_en checkref_es checkref_fr checkref_nb checkref_vi checkref_zh_CN
22.PHONY: pdfdocs htmldocs install-doc install-doc-pdf install-doc-html
33
44# To make linuxcnc-checklink widely available
@@ -214,16 +214,21 @@ DOC_SRCS_HU = $(subst $(DOC_SRCDIR)/,, \
214214 $(wildcard $(DOC_SRCDIR)/hu/*.adoc) \
215215 $(wildcard $(DOC_SRCDIR)/hu/*/*.adoc))
216216
217+ DOC_SRCS_NB = $(subst $(DOC_SRCDIR)/,, \
218+ $(wildcard $(DOC_SRCDIR)/nb/*.adoc) \
219+ $(wildcard $(DOC_SRCDIR)/nb/*/*.adoc))
220+
217221DOC_SRCS_ZH_CN = $(subst $(DOC_SRCDIR)/,, \
218222 $(wildcard $(DOC_SRCDIR)/zh_CN/*.adoc) \
219223 $(wildcard $(DOC_SRCDIR)/zh_CN/*/*.adoc))
220224
221- DOC_SRCS = $(DOC_SRCS_EN) $(DOC_SRCS_FR) $(DOC_SRCS_ES) $(DOC_SRCS_HU) $(DOC_SRCS_ZH_CN)
225+ DOC_SRCS = $(DOC_SRCS_EN) $(DOC_SRCS_FR) $(DOC_SRCS_ES) $(DOC_SRCS_HU) $(DOC_SRCS_NB) $( DOC_SRCS_ZH_CN)
222226
223227DOC_SRCS_EN_SMALL = $(filter-out Master_%,$(DOC_SRCS_EN))
224228DOC_SRCS_ES_SMALL = $(filter-out Master_%,$(DOC_SRCS_ES))
225229DOC_SRCS_FR_SMALL = $(filter-out Master_%,$(DOC_SRCS_FR))
226230DOC_SRCS_HU_SMALL = $(filter-out Master_%,$(DOC_SRCS_HU))
231+ DOC_SRCS_NB_SMALL = $(filter-out Master_%,$(DOC_SRCS_NB))
227232DOC_SRCS_ZH_CN_SMALL = $(filter-out Master_%,$(DOC_SRCS_ZH_CN))
228233
229234DOC_SRCS_HTML = $(patsubst %.adoc, %.html, $(foreach p, $(DOC_SRCS), $(if $(findstring Master_, $(p)),, $p)))
@@ -233,15 +238,17 @@ DOC_TARGETS_XML = $(patsubst $(DOC_DIR)/html/%.html, objects/%.xml, $(DOC_TARGET
233238DOC_TARGETS_XML_ES = $(foreach p, $(DOC_TARGETS_XML), $(if $(findstring /es/, $(p)), $p))
234239DOC_TARGETS_XML_FR = $(foreach p, $(DOC_TARGETS_XML), $(if $(findstring /fr/, $(p)), $p))
235240DOC_TARGETS_XML_HU = $(foreach p, $(DOC_TARGETS_XML), $(if $(findstring /hu/, $(p)), $p))
241+ DOC_TARGETS_XML_NB = $(foreach p, $(DOC_TARGETS_XML), $(if $(findstring /nb/, $(p)), $p))
236242DOC_TARGETS_XML_VI = $(foreach p, $(DOC_TARGETS_XML), $(if $(findstring /vi/, $(p)), $p))
237243DOC_TARGETS_XML_ZH_CN = $(foreach p, $(DOC_TARGETS_XML), $(if $(findstring /zh_CN/, $(p)), $p))
238- DOC_TARGETS_XML_EN = $(filter-out $(DOC_TARGETS_XML_ES), $(filter-out $(DOC_TARGETS_XML_FR), $(filter-out $(DOC_TARGETS_XML_HU), $(filter-out $(DOC_TARGETS_XML_VI), $(filter-out $(DOC_TARGETS_XML_ZH_CN), $(DOC_TARGETS_XML))))))
244+ DOC_TARGETS_XML_EN = $(filter-out $(DOC_TARGETS_XML_ES), $(filter-out $(DOC_TARGETS_XML_FR), $(filter-out $(DOC_TARGETS_XML_HU), $(filter-out $(DOC_TARGETS_XML_NB), $(filter-out $( DOC_TARGETS_XML_VI), $(filter-out $(DOC_TARGETS_XML_ZH_CN), $(DOC_TARGETS_XML) ))))))
239245DOC_TARGETS_HTML_ES = $(foreach p, $(DOC_TARGETS_HTML), $(if $(findstring /es/, $(p)), $p))
240246DOC_TARGETS_HTML_FR = $(foreach p, $(DOC_TARGETS_HTML), $(if $(findstring /fr/, $(p)), $p))
241247DOC_TARGETS_HTML_HU = $(foreach p, $(DOC_TARGETS_HTML), $(if $(findstring /hu/, $(p)), $p))
248+ DOC_TARGETS_HTML_NB = $(foreach p, $(DOC_TARGETS_HTML), $(if $(findstring /nb/, $(p)), $p))
242249DOC_TARGETS_HTML_VI = $(foreach p, $(DOC_TARGETS_HTML), $(if $(findstring /vi/, $(p)), $p))
243250DOC_TARGETS_HTML_ZH_CN = $(foreach p, $(DOC_TARGETS_HTML), $(if $(findstring /zh_CN/, $(p)), $p))
244- DOC_TARGETS_HTML_EN = $(filter-out $(DOC_TARGETS_HTML_ES), $(filter-out $(DOC_TARGETS_HTML_FR), $(filter-out $(DOC_TARGETS_HTML_HU), $(filter-out $(DOC_TARGETS_HTML_VI), $(filter-out $(DOC_TARGETS_HTML_ZH_CN), $(DOC_TARGETS_HTML))))))
251+ DOC_TARGETS_HTML_EN = $(filter-out $(DOC_TARGETS_HTML_ES), $(filter-out $(DOC_TARGETS_HTML_FR), $(filter-out $(DOC_TARGETS_HTML_HU), $(filter-out $(DOC_TARGETS_HTML_NB), $(filter-out $( DOC_TARGETS_HTML_VI), $(filter-out $(DOC_TARGETS_HTML_ZH_CN), $(DOC_TARGETS_HTML) ))))))
245252
246253MAN_HTML_TARGETS = $(patsubst $(DOC_DIR)/man/%, $(DOC_DIR)/html/man/%.html, $(MAN_SRCS))
247254
@@ -258,11 +265,15 @@ PDF_TARGETS_FR = $(addprefix $(DOC_DIR)/, $(subst fr/,, \
258265 $(patsubst %.adoc,%_fr.pdf, \
259266 $(subst Master_,LinuxCNC_, $(filter fr/Master_%,$(DOC_SRCS_FR))))))
260267
268+ PDF_TARGETS_NB = $(addprefix $(DOC_DIR)/, $(subst nb/,, \
269+ $(patsubst %.adoc,%_nb.pdf, \
270+ $(subst Master_,LinuxCNC_, $(filter nb/Master_%,$(DOC_SRCS_NB))))))
271+
261272PDF_TARGETS_ZH_CN = $(addprefix $(DOC_DIR)/, $(subst zh_CN/,, \
262273 $(patsubst %.adoc,%_zh_CN.pdf, \
263274 $(subst Master_,LinuxCNC_, $(filter zh_CN/Master_%,$(DOC_SRCS_ZH_CN))))))
264275
265- PDF_TARGETS = $(PDF_TARGETS_EN) $(PDF_TARGETS_ES) $(PDF_TARGETS_FR)
276+ PDF_TARGETS = $(PDF_TARGETS_EN) $(PDF_TARGETS_ES) $(PDF_TARGETS_FR) $(PDF_TARGETS_NB)
266277
267278# Chinese PDFs only build with xetex, which is missing in stretch
268279SHELL=/bin/bash
@@ -338,7 +349,7 @@ copy_asciidoc_files:
338349 cp -f /etc/asciidoc/stylesheets/*.css $(DOC_DIR)/html
339350 cp -f /etc/asciidoc/javascripts/*.js $(DOC_DIR)/html
340351
341- checkref: checkref_en checkref_es checkref_fr checkref_hu checkref_vi checkref_zh_CN
352+ checkref: checkref_en checkref_es checkref_fr checkref_hu checkref_nb checkref_vi checkref_zh_CN
342353
343354checkref_en: $(DOC_TARGETS_HTML_EN) $(DOC_DIR)/html/index.html $(DOC_DIR)/html/gcode.html .htmldoc-stamp
344355 @$(DOC_SRCDIR)/checkref English $^
@@ -352,6 +363,9 @@ checkref_hu: $(DOC_TARGETS_HTML_HU) .htmldoc-stamp
352363checkref_es: $(DOC_TARGETS_HTML_ES) $(DOC_DIR)/html/es/gcode.html .htmldoc-stamp
353364 @$(DOC_SRCDIR)/checkref Spanish $^
354365
366+ checkref_nb: $(DOC_TARGETS_HTML_NB) .htmldoc-stamp
367+ @$(DOC_SRCDIR)/checkref Norwegian $^
368+
355369checkref_zh_CN: $(DOC_TARGETS_HTML_ZH_CN) .htmldoc-stamp
356370 @$(DOC_SRCDIR)/checkref Chinese $^
357371
@@ -377,6 +391,8 @@ $(DOC_DIR)/LinuxCNC_Getting_Started_es.pdf: $(DOC_SRCDIR)/es/Master_Getting_Star
377391 @ln -f $< $@
378392$(DOC_DIR)/LinuxCNC_Getting_Started_fr.pdf: $(DOC_SRCDIR)/fr/Master_Getting_Started.pdf
379393 @ln -f $< $@
394+ $(DOC_DIR)/LinuxCNC_Getting_Started_nb.pdf: $(DOC_SRCDIR)/nb/Master_Getting_Started.pdf
395+ @ln -f $< $@
380396$(DOC_DIR)/LinuxCNC_Getting_Started_zh_CN.pdf: $(DOC_SRCDIR)/zh_CN/Master_Getting_Started.pdf
381397 @ln -f $< $@
382398
@@ -386,6 +402,8 @@ $(DOC_DIR)/LinuxCNC_Documentation_es.pdf: $(DOC_SRCDIR)/es/Master_Documentation.
386402 @ln -f $< $@
387403$(DOC_DIR)/LinuxCNC_Documentation_fr.pdf: $(DOC_SRCDIR)/fr/Master_Documentation.pdf
388404 @ln -f $< $@
405+ $(DOC_DIR)/LinuxCNC_Documentation_nb.pdf: $(DOC_SRCDIR)/nb/Master_Documentation.pdf
406+ @ln -f $< $@
389407$(DOC_DIR)/LinuxCNC_Documentation_zh_CN.pdf: $(DOC_SRCDIR)/zh_CN/Master_Documentation.pdf
390408 @ln -f $< $@
391409
@@ -395,6 +413,8 @@ $(DOC_DIR)/LinuxCNC_Integrator_es.pdf: $(DOC_SRCDIR)/es/Master_Integrator.pdf
395413 @ln -f $< $@
396414$(DOC_DIR)/LinuxCNC_Integrator_fr.pdf: $(DOC_SRCDIR)/fr/Master_Integrator.pdf
397415 @ln -f $< $@
416+ $(DOC_DIR)/LinuxCNC_Integrator_nb.pdf: $(DOC_SRCDIR)/nb/Master_Integrator.pdf
417+ @ln -f $< $@
398418$(DOC_DIR)/LinuxCNC_Integrator_zh_CN.pdf: $(DOC_SRCDIR)/zh_CN/Master_Integrator.pdf
399419 @ln -f $< $@
400420
@@ -404,6 +424,8 @@ $(DOC_DIR)/LinuxCNC_Developer_es.pdf: $(DOC_SRCDIR)/es/Master_Developer.pdf
404424 @ln -f $< $@
405425$(DOC_DIR)/LinuxCNC_Developer_fr.pdf: $(DOC_SRCDIR)/fr/Master_Developer.pdf
406426 @ln -f $< $@
427+ $(DOC_DIR)/LinuxCNC_Developer_nb.pdf: $(DOC_SRCDIR)/nb/Master_Developer.pdf
428+ @ln -f $< $@
407429$(DOC_DIR)/LinuxCNC_Developer_zh_CN.pdf: $(DOC_SRCDIR)/zh_CN/Master_Developer.pdf
408430 @ln -f $< $@
409431
@@ -512,6 +534,9 @@ objects/xref_fr.links: $(patsubst %.adoc,objects/%.links,$(DOC_SRCS_FR_SMALL))
512534objects/xref_hu.links: $(patsubst %.adoc,objects/%.links,$(DOC_SRCS_HU_SMALL))
513535 $(PYTHON) $(DOC_SRCDIR)/links_db_gen.py objects/ $^ > $@
514536
537+ objects/xref_nb.links: $(patsubst %.adoc,objects/%.links,$(DOC_SRCS_NB_SMALL))
538+ $(PYTHON) $(DOC_SRCDIR)/links_db_gen.py objects/ $^ > $@
539+
515540objects/xref_zh_CN.links: $(patsubst %.adoc,objects/%.links,$(DOC_SRCS_ZH_CN_SMALL))
516541 $(PYTHON) $(DOC_SRCDIR)/links_db_gen.py objects/ $^ > $@
517542
@@ -635,6 +660,19 @@ $(patsubst %.adoc,$(DOC_SRCDIR)/%.html,$(DOC_SRCS_ES_SMALL)): $(DOC_SRCDIR)/%.ht
635660 -a stylesheet=linuxcnc.css \
636661 -d book -a toc -a numbered -b xhtml11 $< || (X=$$?; rm -f $@; exit $$X)
637662
663+ $(patsubst %.adoc,$(DOC_SRCDIR)/%.html,$(DOC_SRCS_NB_SMALL)): $(DOC_SRCDIR)/%.html: $(DOC_SRCDIR)/%.adoc objects/xref_nb.links $(LOC_LANG_MAP)
664+ asciidoc -f $(DOC_SRCDIR)/xhtml11.conf \
665+ -f $(DOC_SRCDIR)/asciidoc-dont-replace-arrows.conf \
666+ -f $(LOC_HL_DIR)/emc-langs-source-highlight.conf \
667+ -a "source_highlight_dir=$(LOC_HL_DIR)/local" \
668+ -a linkcss \
669+ $(STYLES_SCRIPTS) \
670+ -a "scriptdir=$(DOC_SRCDIR)/" \
671+ -a "relindir=$(shell dirname $*)" \
672+ -a "linksfile=objects/xref_nb.links" \
673+ -a stylesheet=linuxcnc.css \
674+ -d book -a toc -a numbered -b xhtml11 $< || (X=$$?; rm -f $@; exit $$X)
675+
638676$(patsubst %.adoc,$(DOC_SRCDIR)/%.html,$(DOC_SRCS_ZH_CN_SMALL)): $(DOC_SRCDIR)/%.html: $(DOC_SRCDIR)/%.adoc objects/xref_zh_CN.links $(LOC_LANG_MAP)
639677 asciidoc -f $(DOC_SRCDIR)/xhtml11.conf \
640678 -f $(DOC_SRCDIR)/asciidoc-dont-replace-arrows.conf \
@@ -659,6 +697,10 @@ $(DOC_DIR)/html/es/xref.html: objects/xref_es.xml $(DOC_SRCDIR)/xref.xsl $(DOC_S
659697 $(ECHO) Converting $< to HTML
660698 @xsltproc --stringparam docname "xref_es" --stringparam language spanish --path objects -o $@ $(DOC_SRCDIR)/xref.xsl $<
661699
700+ $(DOC_DIR)/html/nb/xref.html: objects/xref_nb.xml $(DOC_SRCDIR)/xref.xsl $(DOC_SRCDIR)/docs.xml $(DOC_SRCDIR)/terms.xml
701+ $(ECHO) Converting $< to HTML
702+ @xsltproc --stringparam docname "xref_nb" --stringparam language spanish --path objects -o $@ $(DOC_SRCDIR)/xref.xsl $<
703+
662704$(DOC_DIR)/html/zh_CN/xref.html: objects/xref_zh_CN.xml $(DOC_SRCDIR)/xref.xsl $(DOC_SRCDIR)/docs.xml $(DOC_SRCDIR)/terms.xml
663705 $(ECHO) Converting $< to HTML
664706 @xsltproc --stringparam docname "xref_zh_CN" --stringparam language chinese --path objects -o $@ $(DOC_SRCDIR)/xref.xsl $<
0 commit comments