File 6051-Fix-installation-of-docs-to-directory-with-space-and.patch of Package erlang

From cd645af275ac7c5871cf826709ba95ab0fef1b1e Mon Sep 17 00:00:00 2001
From: Lukas Larsson <lukas@erlang.org>
Date: Fri, 1 Apr 2022 13:28:43 +0200
Subject: [PATCH 1/9] Fix installation of docs to directory with space and
 unicode

---
 .github/dockerfiles/Dockerfile.64-bit         | 13 +--
 .github/dockerfiles/init.sh                   |  2 +-
 .github/workflows/main.yaml                   |  4 +-
 HOWTO/DEVELOPMENT.md                          |  2 +-
 make/doc.mk                                   |  7 +-
 system/doc/design_principles/Makefile         |  4 +-
 system/doc/efficiency_guide/Makefile          |  4 +-
 system/doc/embedded/Makefile                  |  4 +-
 system/doc/general_info/Makefile              |  4 +-
 system/doc/getting_started/Makefile           |  4 +-
 system/doc/installation_guide/Makefile        |  8 +-
 system/doc/oam/Makefile                       |  4 +-
 system/doc/programming_examples/Makefile      |  4 +-
 system/doc/reference_manual/Makefile          |  4 +-
 system/doc/system_architecture_intro/Makefile |  4 +-
 system/doc/system_principles/Makefile         |  4 +-
 system/doc/top/Makefile                       | 81 ++++++++++++-------
 system/doc/top/src/erl_html_tools.erl         | 22 ++---
 system/doc/tutorial/Makefile                  |  4 +-
 19 files changed, 100 insertions(+), 83 deletions(-)

diff --git a/make/doc.mk b/make/doc.mk
index 119dc75971..247ae4b36e 100644
--- a/make/doc.mk
+++ b/make/doc.mk
@@ -156,9 +156,6 @@ clean_chunks:
 # ----------------------------------------------------
 include $(ERL_TOP)/make/otp_release_targets.mk
 
-$(RELSYSDIR) $(RELSYSDIR)/doc:
-	$(INSTALL_DIR) "$@"
-
 release_pdf_spec: pdf
 	$(INSTALL_DIR) "$(RELSYSDIR)/doc/pdf"
 	$(INSTALL_DATA) $(TOP_PDF_FILE) "$(RELSYSDIR)/doc/pdf"
@@ -206,8 +203,8 @@ ifneq ($(MAN7_FILES),)
 	$(INSTALL_DATA) $(MAN7_FILES) "$(RELEASE_PATH)/man/man7"
 endif
 
-release_docs_spec: $(RELSYSDIR)/doc $(INFO_FILE) $(DOC_TARGETS:%=release_%_spec)
-	$(INSTALL_DATA) $(INFO_FILE) $(RELSYSDIR)
+release_docs_spec: $(INFO_FILE) $(DOC_TARGETS:%=release_%_spec)
+	$(INSTALL_DATA) $(INFO_FILE) "$(RELSYSDIR)"
 ifneq ($(STANDARDS),)
 	$(INSTALL_DIR) "$(RELEASE_PATH)/doc/standard"
 	$(INSTALL_DATA) $(STANDARDS) "$(RELEASE_PATH)/doc/standard"
diff --git a/system/doc/design_principles/Makefile b/system/doc/design_principles/Makefile
index 44d5992a2e..eb26f3527e 100644
--- a/system/doc/design_principles/Makefile
+++ b/system/doc/design_principles/Makefile
@@ -33,7 +33,7 @@ XMLDIR := $(XMLDIR)/design_principles
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc/design_principles"
+RELSYSDIR = $(RELEASE_PATH)/doc/design_principles
 
 # ----------------------------------------------------
 # Target Specs
@@ -122,7 +122,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
 release_html_spec: html
 	$(INSTALL_DIR) "$(RELSYSDIR)"
 	$(INSTALL_DATA) $(IMAGE_FILES) $(EXTRA_FILES) $(HTMLDIR)/*.html \
-		$(RELSYSDIR)
+		"$(RELSYSDIR)"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec)
 
diff --git a/system/doc/efficiency_guide/Makefile b/system/doc/efficiency_guide/Makefile
index 50ed66019a..8b210d38e8 100644
--- a/system/doc/efficiency_guide/Makefile
+++ b/system/doc/efficiency_guide/Makefile
@@ -32,7 +32,7 @@ XMLDIR := $(XMLDIR)/efficiency_guide
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc/efficiency_guide"
+RELSYSDIR = $(RELEASE_PATH)/doc/efficiency_guide
 
 # ----------------------------------------------------
 # Target Specs
@@ -112,7 +112,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
 release_html_spec: html
 	$(INSTALL_DIR) "$(RELSYSDIR)"
 	$(INSTALL_DATA) $(GIF_FILES) $(EXTRA_FILES) $(HTMLDIR)/*.html \
-		$(RELSYSDIR)
+		"$(RELSYSDIR)"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec)
 
diff --git a/system/doc/embedded/Makefile b/system/doc/embedded/Makefile
index 29f3f74564..775cb4b23b 100644
--- a/system/doc/embedded/Makefile
+++ b/system/doc/embedded/Makefile
@@ -32,7 +32,7 @@ XMLDIR := $(XMLDIR)/embedded
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc/embedded"
+RELSYSDIR = $(RELEASE_PATH)/doc/embedded
 
 # ----------------------------------------------------
 # Target Specs
@@ -100,7 +100,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
 release_html_spec: html
 	$(INSTALL_DIR) "$(RELSYSDIR)"
 	$(INSTALL_DATA) $(GIF_FILES) $(EXTRA_FILES) $(HTMLDIR)/*.html \
-		$(RELSYSDIR)
+		"$(RELSYSDIR)"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec)
 
diff --git a/system/doc/general_info/Makefile b/system/doc/general_info/Makefile
index 55cac49c1f..3c79601a41 100644
--- a/system/doc/general_info/Makefile
+++ b/system/doc/general_info/Makefile
@@ -32,7 +32,7 @@ XMLDIR := $(XMLDIR)/general_info
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc/general_info"
+RELSYSDIR = $(RELEASE_PATH)/doc/general_info
 
 # ----------------------------------------------------
 # Target Specs
@@ -108,7 +108,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
 release_html_spec: html
 	$(INSTALL_DIR) "$(RELSYSDIR)"
 	$(INSTALL_DATA) $(GIF_FILES) $(EXTRA_FILES) $(HTMLDIR)/*.html \
-		$(RELSYSDIR)
+		"$(RELSYSDIR)"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec)
 
diff --git a/system/doc/getting_started/Makefile b/system/doc/getting_started/Makefile
index 6a286d6df6..0d8c5c0c72 100644
--- a/system/doc/getting_started/Makefile
+++ b/system/doc/getting_started/Makefile
@@ -32,7 +32,7 @@ XMLDIR := $(XMLDIR)/getting_started
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc/getting_started"
+RELSYSDIR = $(RELEASE_PATH)/doc/getting_started
 
 # ----------------------------------------------------
 # Target Specs
@@ -99,7 +99,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
 release_html_spec: html
 	$(INSTALL_DIR) "$(RELSYSDIR)"
 	$(INSTALL_DATA) $(GIF_FILES) $(EXTRA_FILES) $(HTMLDIR)/*.html \
-		$(RELSYSDIR)
+		"$(RELSYSDIR)"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec)
 
diff --git a/system/doc/installation_guide/Makefile b/system/doc/installation_guide/Makefile
index 53a1cad319..1d7f29253c 100644
--- a/system/doc/installation_guide/Makefile
+++ b/system/doc/installation_guide/Makefile
@@ -33,7 +33,7 @@ XMLDIR := $(XMLDIR)/installation_guide
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc/installation_guide"
+RELSYSDIR = $(RELEASE_PATH)/doc/installation_guide
 REDIRECT_HTML_RELSYSDIR = $(RELSYSDIR)/source
 
 # ----------------------------------------------------
@@ -127,9 +127,9 @@ include $(ERL_TOP)/make/otp_release_targets.mk
 
 release_html_spec: html
 	$(INSTALL_DIR) "$(RELSYSDIR)"
-	$(INSTALL_DATA) $(GIF_FILES) $(HTMLDIR)/*.html $(RELSYSDIR)
-	$(INSTALL_DIR) $(REDIRECT_HTML_RELSYSDIR)
-	$(INSTALL_DATA) $(REDIRECT_HTML_FILES) $(REDIRECT_HTML_RELSYSDIR)
+	$(INSTALL_DATA) $(GIF_FILES) $(HTMLDIR)/*.html "$(RELSYSDIR)"
+	$(INSTALL_DIR) "$(REDIRECT_HTML_RELSYSDIR)"
+	$(INSTALL_DATA) $(REDIRECT_HTML_FILES) "$(REDIRECT_HTML_RELSYSDIR)"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec)
 
diff --git a/system/doc/oam/Makefile b/system/doc/oam/Makefile
index 40b14485da..47cac62ea6 100644
--- a/system/doc/oam/Makefile
+++ b/system/doc/oam/Makefile
@@ -31,7 +31,7 @@ XMLDIR := $(XMLDIR)/oam
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc/oam"
+RELSYSDIR = $(RELEASE_PATH)/doc/oam
 
 # ----------------------------------------------------
 # Target Specs
@@ -101,7 +101,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
 release_html_spec: html
 	$(INSTALL_DIR) "$(RELSYSDIR)"
 	$(INSTALL_DATA) $(GIF_FILES) $(EXTRA_FILES) $(HTMLDIR)/*.html \
-		$(RELSYSDIR)
+		"$(RELSYSDIR)"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec)
 
diff --git a/system/doc/programming_examples/Makefile b/system/doc/programming_examples/Makefile
index 7099d88ebc..fefef96c0a 100644
--- a/system/doc/programming_examples/Makefile
+++ b/system/doc/programming_examples/Makefile
@@ -32,7 +32,7 @@ XMLDIR := $(XMLDIR)/programming_examples
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc/programming_examples"
+RELSYSDIR = $(RELEASE_PATH)/doc/programming_examples
 
 # ----------------------------------------------------
 # Target Specs
@@ -99,7 +99,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
 release_html_spec: html
 	$(INSTALL_DIR) "$(RELSYSDIR)"
 	$(INSTALL_DATA) $(GIF_FILES) $(EXTRA_FILES) $(HTMLDIR)/*.html \
-		$(RELSYSDIR)
+		"$(RELSYSDIR)"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec)
 
diff --git a/system/doc/reference_manual/Makefile b/system/doc/reference_manual/Makefile
index 2e0cb4fbc2..9c5c9666db 100644
--- a/system/doc/reference_manual/Makefile
+++ b/system/doc/reference_manual/Makefile
@@ -33,7 +33,7 @@ XMLDIR := $(XMLDIR)/reference_manual
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc/reference_manual"
+RELSYSDIR = $(RELEASE_PATH)/doc/reference_manual
 
 # ----------------------------------------------------
 # Target Specs
@@ -102,7 +102,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
 release_html_spec: html
 	$(INSTALL_DIR) "$(RELSYSDIR)"
 	$(INSTALL_DATA) $(GIF_FILES) $(EXTRA_FILES) $(HTMLDIR)/*.html \
-		$(RELSYSDIR)
+		"$(RELSYSDIR)"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec)
 
diff --git a/system/doc/system_architecture_intro/Makefile b/system/doc/system_architecture_intro/Makefile
index 8657da0e2c..57b60a80fe 100644
--- a/system/doc/system_architecture_intro/Makefile
+++ b/system/doc/system_architecture_intro/Makefile
@@ -32,7 +32,7 @@ XMLDIR := $(XMLDIR)/system_architecture_intro
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc/system_architecture_intro"
+RELSYSDIR = $(RELEASE_PATH)/doc/system_architecture_intro
 
 # ----------------------------------------------------
 # Target Specs
@@ -94,7 +94,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
 release_html_spec: html
 	$(INSTALL_DIR) "$(RELSYSDIR)"
 	$(INSTALL_DATA) $(GIF_FILES) $(EXTRA_FILES) $(HTMLDIR)/*.html \
-		$(RELSYSDIR)
+		"$(RELSYSDIR)"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec)
 
diff --git a/system/doc/system_principles/Makefile b/system/doc/system_principles/Makefile
index 00b2203394..dca8f54cc5 100644
--- a/system/doc/system_principles/Makefile
+++ b/system/doc/system_principles/Makefile
@@ -32,7 +32,7 @@ XMLDIR := $(XMLDIR)/system_principles
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc/system_principles"
+RELSYSDIR = $(RELEASE_PATH)/doc/system_principles
 
 # ----------------------------------------------------
 # Target Specs
@@ -95,7 +95,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
 release_html_spec: html
 	$(INSTALL_DIR) "$(RELSYSDIR)"
 	$(INSTALL_DATA) $(GIF_FILES) $(EXTRA_FILES) $(HTMLDIR)/*.html \
-		$(RELSYSDIR)
+		"$(RELSYSDIR)"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec)
 
diff --git a/system/doc/top/Makefile b/system/doc/top/Makefile
index e294d0b0a7..c01614252c 100644
--- a/system/doc/top/Makefile
+++ b/system/doc/top/Makefile
@@ -31,7 +31,7 @@ APPLICATION=otp-system-documentation
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc"
+RELSYSDIR = $(RELEASE_PATH)/doc
 
 GIF_FILES = 
 
@@ -102,14 +102,33 @@ PDFREFDIR= pdf
 TOP_PDF_FILE = $(PDFDIR)/$(APPLICATION)-$(VSN).pdf
 TOPDOC=true
 
+sp :=
+
+sp +=
+
+## qs translates ' ' to '\ ', sq translates '\ ' to ' '
+## These function are used when the make target is a path that can
+## contain spaces. This is needed a the target 'foo bar:' needs to be
+## written as 'foo\ bar:' in order for make to interpret it as a single
+## target. Unfortunately, when this is done $@ will contain '\ ', which
+## means that we have to use sq to remove the escape again. A small example
+## looks like this:
+##
+## $(call qs, /path/with space/file.o): $(call qs, /path/with space/file.c)
+##   	gcc -c -o "$(call sq, $@)" "$(call sq, $^)"
+qs = $(subst $(sp),\$(sp),$1)
+sq = $(subst \$(sp),$(sp),$1)
+
 ifdef RELEASE_PATH
 INST_TYPE=rel
 INST_TYPE_SRC_DIR=$(RELEASE_PATH)
 # We build to the 'temporary' dir in order to be able to install
 # results using INSTALL_DATA (in order to get correct access
 # rights on installed files)
+# The temporary folder needs to be in the released system as we do
+# not know if we have write permissions in the source release.
 INST_TYPE_DEST_DIR=$(RELSYSDIR)/temporary
-INST_TYPE_DEST_DIR_DEP=$(INST_TYPE_DEST_DIR)
+INST_TYPE_DEST_DIR_DEP=$(call qs,$(INST_TYPE_DEST_DIR))
 INST_TYPE_JS_DEST_DIR=$(INST_TYPE_DEST_DIR)
 INST_TYPE_VSN_FILE=$(INST_TYPE_DEST_DIR)/OTP_VERSION
 else
@@ -131,17 +150,17 @@ EBIN = ebin
 INDEX_SCRIPT = $(EBIN)/erl_html_tools.$(EMULATOR)
 INDEX_SRC = src/erl_html_tools.erl
 
-INDEX_HTML=$(INST_TYPE_DEST_DIR)/index.html
-APPLICATIONS_HTML=$(INST_TYPE_DEST_DIR)/applications.html
+INDEX_HTML=$(call qs,$(INST_TYPE_DEST_DIR)/index.html)
+APPLICATIONS_HTML=$(call qs,$(INST_TYPE_DEST_DIR)/applications.html)
 INDEX_FILES = $(INDEX_HTML) $(APPLICATIONS_HTML)
 
-JAVASCRIPT = $(INST_TYPE_JS_DEST_DIR)/erlresolvelinks.js
+JAVASCRIPT = $(call qs,$(INST_TYPE_JS_DEST_DIR)/erlresolvelinks.js)
 JAVASCRIPT_BUILD_SCRIPT = $(EBIN)/erlresolvelinks.$(EMULATOR)
 JAVASCRIPT_BUILD_SCRIPT_SRC = src/erlresolvelinks.erl
 
 MAN_INDEX_SCRIPT = $(EBIN)/otp_man_index.$(EMULATOR)
 MAN_INDEX_SRC = src/otp_man_index.erl
-MAN_INDEX = $(INST_TYPE_DEST_DIR)/man_index.html
+MAN_INDEX = $(call qs,$(INST_TYPE_DEST_DIR)/man_index.html)
 
 GLOSSARY  = $(HTMLDIR)/glossary.html
 GLOSSARY_SRC = $(ERL_TOP)/system/internal_tools/doctools/src/glossary.erl
@@ -156,18 +175,18 @@ TEMPLATES = \
 $(INDEX_SCRIPT): $(INDEX_SRC)
 	$(ERLC) -o$(EBIN) +warn_unused_vars $<
 
-$(INST_TYPE_DEST_DIR)/OTP_VERSION: $(INST_TYPE_DEST_DIR_DEP)
+$(call qs,$(INST_TYPE_DEST_DIR)/OTP_VERSION): $(INST_TYPE_DEST_DIR_DEP)
 	if test -f "$(RELEASE_PATH)/releases/$(SYSTEM_VSN)/OTP_VERSION"; then \
-		$(CP) "$(RELEASE_PATH)/releases/$(SYSTEM_VSN)/OTP_VERSION" $@; \
+		$(CP) "$(RELEASE_PATH)/releases/$(SYSTEM_VSN)/OTP_VERSION" "$(call sq,$@)"; \
 	else \
-		$(CP) $(ERL_TOP)/OTP_VERSION $@; \
+		$(CP) "$(ERL_TOP)/OTP_VERSION" "$(call sq,$@)"; \
 	fi
 
 # We don't list toc_*.html as targets because we don't know
-$(INDEX_HTML) + $(APPLICATIONS_HTML): $(INST_TYPE_DEST_DIR_DEP) $(INDEX_SCRIPT) $(TEMPLATES) $(INST_TYPE_VSN_FILE)
+$(INDEX_HTML) + $(APPLICATIONS_HTML): $(INST_TYPE_DEST_DIR_DEP) $(INDEX_SCRIPT) $(TEMPLATES) $(call qs,$(INST_TYPE_VSN_FILE))
 	echo "Generating index $@"
-	$(ERL) -noshell -pa $(EBIN) -s erl_html_tools top_index $(INST_TYPE) \
-		$(INST_TYPE_SRC_DIR) $(INST_TYPE_DEST_DIR) \
+	$(ERL) +pc unicode -noshell -pa $(EBIN) -s erl_html_tools top_index $(INST_TYPE) \
+		"$(INST_TYPE_SRC_DIR)" "$(INST_TYPE_DEST_DIR)" \
 		`cat "$(INST_TYPE_VSN_FILE)"` -s erlang halt
 
 
@@ -177,8 +196,8 @@ $(JAVASCRIPT_BUILD_SCRIPT): $(JAVASCRIPT_BUILD_SCRIPT_SRC)
 	$(ERLC) -o$(EBIN) +warn_unused_vars $<
 
 $(JAVASCRIPT): $(INST_TYPE_DEST_DIR_DEP) $(JAVASCRIPT_BUILD_SCRIPT)
-	erl -noshell -pa $(EBIN) -run erlresolvelinks make $(ERL_TOP) \
-		$(INST_TYPE_SRC_DIR) $(INST_TYPE_JS_DEST_DIR) -s erlang halt
+	$(ERL) +pc unicode -noshell -pa $(EBIN) -run erlresolvelinks make $(ERL_TOP) \
+		"$(INST_TYPE_SRC_DIR)" "$(INST_TYPE_JS_DEST_DIR)" -s erlang halt
 
 #--------------------------------------------------------------------------
 
@@ -186,8 +205,8 @@ $(MAN_INDEX_SCRIPT): $(MAN_INDEX_SRC)
 	$(ERLC) -o$(EBIN) +warn_unused_vars $<
 
 $(MAN_INDEX): $(INST_TYPE_DEST_DIR_DEP) $(MAN_INDEX_SCRIPT)
-	$(ERL) -noshell -pa $(EBIN) -s otp_man_index gen $(INST_TYPE) \
-		$(INST_TYPE_SRC_DIR) $@ -s erlang halt
+	$(ERL) +pc unicode -noshell -pa $(EBIN) -s otp_man_index gen $(INST_TYPE) \
+		"$(INST_TYPE_SRC_DIR)" "$(call sq,$@)" -s erlang halt
 
 #--------------------------------------------------------------------------
 
@@ -280,31 +299,31 @@ clean:
 # ---------------------------------------------------- 
 include $(ERL_TOP)/make/otp_release_targets.mk
 
-$(RELSYSDIR)/temporary:
-	$(INSTALL_DIR) $(RELSYSDIR)/temporary
+$(call qs,$(RELSYSDIR)/temporary):
+	$(INSTALL_DIR) "$(RELSYSDIR)/temporary"
 
-$(RELSYSDIR)/docbuild:
-	$(INSTALL_DIR)  $(RELSYSDIR)/docbuild
+$(call qs,$(RELSYSDIR)/docbuild):
+	$(INSTALL_DIR) "$(RELSYSDIR)/docbuild"
 
-release_man_spec: man $(RELSYSDIR)/docbuild
+release_man_spec: man $(call qs,$(RELSYSDIR)/docbuild)
 
-release_html_spec: html $(RELSYSDIR)/docbuild
-	$(INSTALL_DATA) $(MAN_INDEX) $(RELSYSDIR)
-	$(INSTALL_DATA) $(MAN_INDEX_SRC) $(MAN_INDEX_SCRIPT) $(RELSYSDIR)/docbuild
-	$(INSTALL_DIR)  $(RELSYSDIR)/js
-	$(INSTALL_DATA) $(JAVASCRIPT) $(RELSYSDIR)/js
-	$(INSTALL_DATA) $(INDEX_FILES) $(RELSYSDIR)
+release_html_spec: html $(call qs,$(RELSYSDIR)/docbuild)
+	$(INSTALL_DATA) $(MAN_INDEX) "$(RELSYSDIR)"
+	$(INSTALL_DATA) $(MAN_INDEX_SRC) $(MAN_INDEX_SCRIPT) "$(RELSYSDIR)/docbuild"
+	$(INSTALL_DIR)  "$(RELSYSDIR)/js"
+	$(INSTALL_DATA) $(JAVASCRIPT) "$(RELSYSDIR)/js"
+	$(INSTALL_DATA) $(INDEX_FILES) "$(RELSYSDIR)"
 	$(INSTALL_DATA) $(INDEX_SCRIPT) $(JAVASCRIPT_BUILD_SCRIPT) \
 		$(INDEX_SRC) $(JAVASCRIPT_BUILD_SCRIPT_SRC) \
-		$(TEMPLATES) $(RELSYSDIR)/docbuild
+		$(TEMPLATES) "$(RELSYSDIR)/docbuild"
 
 release_pdf_spec: pdf
-	$(INSTALL_DIR)  $(RELSYSDIR)/pdf
+	$(INSTALL_DIR)  "$(RELSYSDIR)/pdf"
 	$(INSTALL_DATA)  \
-		$(TOP_PDF_FILE) $(RELSYSDIR)/pdf
+		$(TOP_PDF_FILE) "$(RELSYSDIR)/pdf"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec) $(INFO_FILES)
 	$(INSTALL_DATA) $(INFO_FILES) "$(RELEASE_PATH)"
-	$(RM) -r $(RELSYSDIR)/temporary
+	$(RM) -r "$(RELSYSDIR)/temporary"
 
 release_spec:
diff --git a/system/doc/top/src/erl_html_tools.erl b/system/doc/top/src/erl_html_tools.erl
index d609f35380..a6df7f523e 100644
--- a/system/doc/top/src/erl_html_tools.erl
+++ b/system/doc/top/src/erl_html_tools.erl
@@ -67,18 +67,18 @@ top_index(RootDir)  when is_atom(RootDir) ->
 
 
 top_index(Source, RootDir, DestDir, OtpBaseVsn) ->
-    report("****\nRootDir: ~p", [RootDir]),
-    report("****\nDestDir: ~p", [DestDir]),
-    report("****\nOtpBaseVsn: ~p", [OtpBaseVsn]),
+    report("****\nRootDir: ~tp", [RootDir]),
+    report("****\nDestDir: ~tp", [DestDir]),
+    report("****\nOtpBaseVsn: ~tp", [OtpBaseVsn]),
 
     put(otp_base_vsn, OtpBaseVsn),
 
     Templates = find_templates(["","templates",DestDir]),
-    report("****\nTemplates: ~p", [Templates]),
+    report("****\nTemplates: ~tp", [Templates]),
     Bases = [{"../lib/", filename:join(RootDir,"lib")},
 	     {"../",     RootDir}],
     Groups = find_information(Source, Bases),
-    report("****\nGroups: ~p", [Groups]),
+    report("****\nGroups: ~tp", [Groups]),
     process_templates(Templates, DestDir, Groups).
 
 top_index_silent(RootDir, DestDir, OtpBaseVsn) ->
@@ -97,7 +97,7 @@ top_index_silent(RootDir, DestDir, OtpBaseVsn) ->
 process_templates([], _DestDir, _Groups) ->
     report("\n", []);
 process_templates([Template | Templates], DestDir, Groups) ->
-    report("****\nIN-FILE: ~s", [Template]),
+    report("****\nIN-FILE: ~ts", [Template]),
     BaseName = filename:basename(Template, ".src"),
     case lists:reverse(filename:rootname(BaseName)) of
 	"_"++_ ->
@@ -127,7 +127,7 @@ process_multi_template_1([{Suffix,Group}|Gs], BaseName, Ext, Template, DestDir,
 process_multi_template_1([], _, _, _, _, _) -> ok.
 
 subst_file(Group, OutFile, Template, Info) ->
-    report("\nOUTFILE: ~s", [OutFile]),
+    report("\nOUTFILE: ~ts", [OutFile]),
     case subst_template(Group, Template, Info) of
 	{ok,Text,_NewInfo} ->
 	    case file:open(OutFile, [write]) of
@@ -135,10 +135,10 @@ subst_file(Group, OutFile, Template, Info) ->
 		    file:write(Stream, Text),
 		    file:close(Stream);
 		Error ->
-		    local_error("Can't write to file ~s: ~w", [OutFile,Error])
+		    local_error("Can't write to file ~ts: ~w", [OutFile,Error])
 	    end;
 	Error ->
-	    local_error("Can't write to file ~s: ~w", [OutFile,Error])
+	    local_error("Can't write to file ~ts: ~w", [OutFile,Error])
     end.
 
 
@@ -203,11 +203,11 @@ get_app_paths(src, AppDirs, URL) ->
 			      {match, [V]} ->
 				  V;
 			      nomatch ->
-				  exit(io_lib:format("No VSN variable found in ~s\n",
+				  exit(io_lib:format("No VSN variable found in ~ts\n",
 						     [VsnFile]))
 			  end;
 		      {error, Reason} ->
-			  exit(io_lib:format("~p : ~s\n", [Reason, VsnFile]))
+			  exit(io_lib:format("~p : ~ts\n", [Reason, VsnFile]))
 		  end,
 	      AppURL = URL ++ App ++ "-" ++ VsnStr,
 	      {App, VsnStr, AppPath, AppURL ++ "/" ++ Sub1}
diff --git a/system/doc/tutorial/Makefile b/system/doc/tutorial/Makefile
index faf06b3878..e715080253 100644
--- a/system/doc/tutorial/Makefile
+++ b/system/doc/tutorial/Makefile
@@ -32,7 +32,7 @@ XMLDIR := $(XMLDIR)/tutorial
 # ----------------------------------------------------
 # Release directory specification
 # ----------------------------------------------------
-RELSYSDIR = "$(RELEASE_PATH)/doc/tutorial"
+RELSYSDIR = $(RELEASE_PATH)/doc/tutorial
 
 # ----------------------------------------------------
 # Target Specs
@@ -123,7 +123,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
 release_html_spec: html
 	$(INSTALL_DIR) "$(RELSYSDIR)"
 	$(INSTALL_DATA) $(GIF_FILES) $(EXTRA_FILES) $(HTMLDIR)/*.html \
-		$(RELSYSDIR)
+		"$(RELSYSDIR)"
 
 release_docs_spec: $(DOC_TARGETS:%=release_%_spec)
 
-- 
2.35.3

openSUSE Build Service is sponsored by