summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLennart Johansson <lennart.johansson@enea.com>2016-06-02 13:41:16 +0200
committerLennart Johansson <lennart.johansson@enea.com>2016-06-02 13:41:16 +0200
commit8decb3267be14596c377155d6bc84a0eb61f04e9 (patch)
tree48ce3df49e534a55457e6a06d88cfcab57eff1e5
parentac10f04eef9b8dfc5d38978f78f4bc6710ea7525 (diff)
downloadel_manifests-networking-8decb3267be14596c377155d6bc84a0eb61f04e9.tar.gz
Doc Add autovariables from manifest, poky.ent, enea.conf
Add autovariable from manifest repository name, e.g. the profile name Add autovariables from poky.ent, e.g. Yocto version etc.. in pardoc-distro Add autovariables from enea.conf e.g. release MAJOR MINOR via generated s_docsrc_common/pardoc-distro and also pick up MAJOR MINOR into the make system to create BOOK_VER => BL_LABEL on books Add autocreate build_boot chapter in release info from the README files in all included targets Adapt book XML files to the above Currently this makes the Makefile and init scripts identical in different el6-<profile>.git All are now automatic: Just clone el6-xxxx.git and cd el6-xxx/doc ; make doc and all are done until the books are built and ready. It takes several minutes to autofetch all from git using the repo command according to the target manifests before the books start to build. Rebuilding books are quick. Signed-off-by: Lennart Johansson <lennart.johansson@enea.com>
-rw-r--r--doc/Makefile136
-rw-r--r--doc/book-enea-linux-open-source/doc/about.xml2
-rw-r--r--doc/book-enea-linux-open-source/doc/book.xml2
-rw-r--r--doc/book-enea-linux-release-info/doc/about_release.xml122
-rw-r--r--doc/book-enea-linux-release-info/doc/book.xml4
-rw-r--r--doc/book-enea-linux-release-info/doc/build_boot_template.xml26
-rw-r--r--doc/book-enea-linux-release-info/doc/main_changes.xml8
-rw-r--r--doc/book-enea-linux-release-info/doc/prerequisites.xml75
-rw-r--r--doc/book-enea-linux-release-info/doc/supported_features.xml2
-rw-r--r--doc/docsrc_common/pardoc-distro.xml5
-rw-r--r--doc/initbuildboot.sh111
11 files changed, 378 insertions, 115 deletions
diff --git a/doc/Makefile b/doc/Makefile
index 306bd4d..59d25d5 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -1,6 +1,11 @@
1#Path to this subsystem's root directory 1#Path to this subsystem's root directory
2SUBSYSROOT := $(shell pwd) 2SUBSYSROOT := $(shell pwd)
3 3
4MANIFEST_DIR = $(dir $(SUBSYSROOT))
5MANIFEST_NAME = $(lastword $(subst /, ,$(MANIFEST_DIR)))
6MANIFEST_TAIL = $(word 2,$(subst -, ,$(MANIFEST_NAME)))
7
8# Generic docbuild.git auto-clone + s_docbuild symlink. Includes TMPCLONEROOT
4include init.mk 9include init.mk
5 10
6# ****************** SUPPORT FOR TARGETS *************************** 11# ****************** SUPPORT FOR TARGETS ***************************
@@ -15,8 +20,10 @@ TARGETDEFAULTXMLS := $(shell cd $(REPODIR); ls -1 */default.xml)
15# URL and HASH of this manifest repository to be used by the repo tool 20# URL and HASH of this manifest repository to be used by the repo tool
16CURRENTHASH := $(shell git log -1 --pretty=format:%H 2>/dev/null) 21CURRENTHASH := $(shell git log -1 --pretty=format:%H 2>/dev/null)
17CURRENTURL := $(shell git remote show origin | sed -n '/Fetch URL: /s/^.*URL: //p' 2>/dev/null) 22CURRENTURL := $(shell git remote show origin | sed -n '/Fetch URL: /s/^.*URL: //p' 2>/dev/null)
18.PHONY: inittargets 23
19# ****************************************************************** 24# ******************* AutoGenerated chapter from template and target READMEs *******
25BUILDBOOT_XML := book-enea-linux-release-info/doc/build_boot_generated.xml
26BUILDBOOT_TEMPLATE := book-enea-linux-release-info/doc/build_boot_template.xml
20 27
21 28
22 29
@@ -33,27 +40,10 @@ DOCBOOK_FO_USEFOP ?= yes
33DOCBOOK_TO_BOOKDIR ?= yes 40DOCBOOK_TO_BOOKDIR ?= yes
34DOCBOOK_CLEANTMP ?= yes 41DOCBOOK_CLEANTMP ?= yes
35 42
36#Components in this subsystem 43#Components (books) in this subsystem
37COMPONENTS := book-enea-linux-release-info book-enea-linux-open-source 44# COMPONENTS := book-enea-linux-release-info book-enea-linux-open-source
38# COMPONENTS += book-enea-linux-target-guide 45# COMPONENTS += book-enea-linux-eclipse-open-source
39# ----------------------------------------------------- 46COMPONENTS := $(shell ls -d book-enea* )
40#Release version, used in labels and text
41REL_VER_EXT := $(shell perl -e \
42'while(<>) {\
43 if (/<!ENTITY ENEA_LINUX_REL_VER "([\d\.-\w]+)">/) { print $$1 ; exit; }\
44}' \
45< $(SUBSYSROOT)/docsrc_common/pardoc-distro.xml 2>/dev/null)
46#$(info REL_VER_EXT = $(REL_VER_EXT))
47
48ifneq ($(REL_VER_EXT),)
49REL_VER ?= $(REL_VER_EXT)
50else
51REL_VER ?= undefined
52endif
53$(info REL_VER = $(REL_VER))
54
55# -----------------------------------------------------
56
57 47
58# -------------------------------------------------------------- 48# --------------------------------------------------------------
59ifeq ($(VERBOSE),yes) 49ifeq ($(VERBOSE),yes)
@@ -76,34 +66,31 @@ VALIDATE = no
76# Export all parameters including those on the command line 66# Export all parameters including those on the command line
77export 67export
78 68
79.PHONY: doc books docusage 69.PHONY: doc books docusage init initbuild inittargets initpardoc initbuildboot
80 70
81 71
82docusage: 72docusage:
83 @echo 'make docusage #Shows this help text' 73 @echo 'make docusage #Shows this help text'
84 @echo ' DOCBOOK_TOOLS_VERSIONS=yes #Displays DocBook tools versions in this machine' 74 @echo ' DOCBOOK_TOOLS_VERSIONS=yes #Displays DocBook tools versions in this machine'
85 @echo 'make doc #Builds the userdoc, does autoinit if needed' 75 @echo 'make doc #Builds the userdoc, does autoinit if needed'
86 @echo 'make init #Init both below' 76 @echo 'make init #Init all needed init* below'
87 @echo 'make initbuild #Init s_docbuild' 77 @echo 'make initbuild #Init s_docbuild Docbook build system and central files'
88 @echo 'make inittargets #Init s_targets using repo tool' 78 @echo 'make inittargets #Init s_targets using repo tool Targets in this distro with poky'
79 @echo 'make initpardoc #Init s_docsrc_common using info from poky/'
80 @echo 'make initbuildboot #Init build_boot chapter from READMEs and template in release info'
89 @echo ' DOCBOOK_CLEANTMP=no #Option to keep temp files in doc/ and tmp/' 81 @echo ' DOCBOOK_CLEANTMP=no #Option to keep temp files in doc/ and tmp/'
90 @echo ' BOOK_GLOBALCLONEROOT=yes #Option for all init above to clone all outside the doc directory' 82 @echo ' BOOK_GLOBALCLONEROOT=yes #Option for all init above to clone all outside the doc directory'
91 @echo ' BOOK_GLOBALCLONEROOT=otherpath #Option for all init above to clone all' 83 @echo ' BOOK_GLOBALCLONEROOT=otherpath #Option for all init above to clone all'
92 @echo #Force rebuilding (ignore dependency on file times or BL_LABEL)' 84 @echo 'make pullbuild #git pull in s_docbuild'
93 @echo ' # Dependency only works if common doc directory is kept' 85 @echo 'make pulltargets #git pull in s_targets. You need also initpardoc initbuildboot'
94 @echo ' BOOKCONDITION'make pullbuild #git pull in s_docbuild'
95 @echo 'make pulltargets #git pull in s_targets'
96 @echo 'make clean #Clean. Also clean s_* but not any external clones' 86 @echo 'make clean #Clean. Also clean s_* but not any external clones'
97 @echo 'The following directories are cloned via the init commands (s_* are symlinks to clones):'
98 @echo ' s_docbuild #Docbook build system and central files'
99 @echo ' s_targets #targets in this distro with poky, for picking some parameters'
100 @echo '' 87 @echo ''
101 @echo 'Optional parameters for make doc:' 88 @echo 'Optional parameters for make doc:'
102 @echo ' COMP=<book-directory> #Component (book) to build. Book component names are book-*' 89 @echo ' COMP=<book-directory> #Component (book) to build. Book component names are book-*'
103 @echo ' #Default component/s:' 90 @echo ' #Default component/s:'
104 @echo ' $(COMPONENTS)' 91 @echo ' $(COMPONENTS)'
105 @echo ' FORMAT=<format> #One of: pdf, html, or eclipse (Default all are built)' 92 @echo ' FORMAT=<format> #One of: pdf, html, or eclipse (Default all are built)'
106 @echo ' BL_LABEL=<baseline> #Becomes footer in book (default: date + time)' 93 @echo ' BL_LABEL=<baseline> #Becomes footer in book (default: from poky enea.conf MAJORMINOR)'
107 @echo ' DOCBOOK_TO_BOOKDIR=no #(default yes) Avoid moving result to book directory' 94 @echo ' DOCBOOK_TO_BOOKDIR=no #(default yes) Avoid moving result to book directory'
108 @echo ' # and avoid erasing common doc and tmp directories' 95 @echo ' # and avoid erasing common doc and tmp directories'
109 @echo ' BOOKFORCE=yes #Force rebuilding (ignore dependency on file times or BL_LABEL)' 96 @echo ' BOOKFORCE=yes #Force rebuilding (ignore dependency on file times or BL_LABEL)'
@@ -118,7 +105,7 @@ docusage:
118 @echo ' DOCBOOK_OLINK_TARGETDB=only #Build a target db for this book (for links into it)' 105 @echo ' DOCBOOK_OLINK_TARGETDB=only #Build a target db for this book (for links into it)'
119 @echo ' DOCBOOK_OLINK_TARGETDB=yes #Build a target db AND build the book' 106 @echo ' DOCBOOK_OLINK_TARGETDB=yes #Build a target db AND build the book'
120 @echo ' #Master olinkdb defined in this Makefile, one per generated format, is:' 107 @echo ' #Master olinkdb defined in this Makefile, one per generated format, is:'
121 @echo ' $(DOCBOOKOLINKDB_BASE)_*.db' 108 @echo ' $(DOCBOOKOLINKDB_BASE)_*.db'
122 @echo ' Typical examples:' 109 @echo ' Typical examples:'
123 @echo ' make doc Creates all books, all formats' 110 @echo ' make doc Creates all books, all formats'
124 @echo ' make doc COMP=book-xxxx FORMAT=html' 111 @echo ' make doc COMP=book-xxxx FORMAT=html'
@@ -137,7 +124,8 @@ ifeq ($(DOCBOOK_TOOLS_VERSIONS),yes)
137 $(VERB)$(MAKE) -f $(DOCBOOKMAKE)/tools_book_standalone.mk book_tools_versions 124 $(VERB)$(MAKE) -f $(DOCBOOKMAKE)/tools_book_standalone.mk book_tools_versions
138endif 125endif
139 126
140init: initbuild inittargets 127# We rely on make doing these in order left to right
128init: initbuild inittargets initpardoc initbuildboot
141pullall: pullbuild pulltargets 129pullall: pullbuild pulltargets
142 130
143# If no COMP, iterate over books-* in COMPONENTS with make doc 131# If no COMP, iterate over books-* in COMPONENTS with make doc
@@ -163,24 +151,27 @@ FORMAT=html pdf eclipse
163endif 151endif
164 152
165 153
166books: initbuild inittargets 154books: init
167# BOOKPACKAGES is defined in all book-*/swcomp.mk 155# BOOKPACKAGES is defined in all book-*/swcomp.mk
168 $(VERB)for book in $(BOOKPACKAGES); do \ 156 $(VERB)DISTRO_VERSION_MAJOR=`egrep '"EneaLinux_DISTRO_VERSION_MAJOR"' s_docsrc_common/pardoc-distro.xml | sed 's/.*<phrase>//;s/<\/phrase>.*//'` ; \
157 DISTRO_VERSION_MINOR=`egrep '"EneaLinux_DISTRO_VERSION_MINOR"' s_docsrc_common/pardoc-distro.xml | sed 's/.*<phrase>//;s/<\/phrase>.*//'` ; \
158 BOOKVER="Profile $(MANIFEST_TAIL)-$$DISTRO_VERSION_MAJOR$$DISTRO_VERSION_MINOR" ; \
159 for book in $(BOOKPACKAGES); do \
169 for format in $(FORMAT); do \ 160 for format in $(FORMAT); do \
170 $(MAKE) -f $(DOCBOOKMAKE)/make_docbook_standalone.mk BOOK=$$book FORMAT=$$format books || exit 10; \ 161 $(MAKE) -f $(DOCBOOKMAKE)/make_docbook_standalone.mk BOOK=$$book FORMAT=$$format BOOK_VER="$$BOOKVER" books || exit 10; \
171 done ; \ 162 done ; \
172 done 163 done
173ifeq ($(DOCBOOK_TO_BOOKDIR),yes) 164ifeq ($(DOCBOOK_TO_BOOKDIR),yes)
174 $(VERB)rm -rf doc tmp 165 $(VERB)rm -rf doc tmp
175else 166else
176ifeq ($(DOCBOOK_CLEANTMP),yes) 167ifeq ($(DOCBOOK_CLEANTMP),yes)
177# keep only doc/pdf/book-*.pdf doc/eclipse/plugins/com.enea.doc.book-* but delete doc/eclipse/plugins/com.enea.doc.book-*/done* 168# keep only doc/pdf/book-*.pdf doc/eclipse/plugins/com.enea.doc.book-* but delete doc/eclipse/plugins/com.enea.doc.book-*/done*
178 $(VERB)rm -rf tmp 2>/dev/null ; rm -rf doc/pdf/book-*/ ; rm -rf doc/eclipse/plugins/com.enea.doc.book-*/done* 2>/dev/null 169 $(VERB)rm -rf tmp 2>/dev/null ; rm -rf doc/pdf/book-*/ ; rm -rf doc/eclipse/plugins/com.enea.doc.book-*/done* 2>/dev/null
179endif 170endif
180endif 171endif
181 172
182 173# cleaninit cleans ALL tmpcommon and all s_* and generated build_boot chapter xml
183clean: cleaninit 174clean: cleaninit cleanbuildboot
184 $(VERB)rm -rf doc tmp 2>/dev/null 175 $(VERB)rm -rf doc tmp 2>/dev/null
185ifneq ($(filter book-%, $(COMPONENTS)),) 176ifneq ($(filter book-%, $(COMPONENTS)),)
186 $(VERB)for comp in $(filter book-%, $(COMPONENTS)); do \ 177 $(VERB)for comp in $(filter book-%, $(COMPONENTS)); do \
@@ -221,4 +212,55 @@ $(TMPCLONEROOT_TARGETS):
221 repo init -u $(CURRENTURL) -b $(CURRENTHASH) -m $$target_default_xml ; repo sync ; \ 212 repo init -u $(CURRENTURL) -b $(CURRENTHASH) -m $$target_default_xml ; repo sync ; \
222 ) ; \ 213 ) ; \
223 done 214 done
224# ****************************************************************** 215
216# ****************************************************************************
217# ******************** SUPPORT FOR dynamic pardoc with added parameters ******
218# pardoc-distro can contain MAJOR.MINOR-xxxxx keeping -xxxx when replacing MINOR.MINOR from enea.conf
219
220PATH_DOCSRC_COMMON = $(SUBSYSROOT)/s_docsrc_common
221NAME_DOCSRC_COMMON = docsrc_common
222TMPCLONEROOT_DOCSRC_COMMON := $(TMPCLONEROOT)/$(NAME_DOCSRC_COMMON)
223TMPPARDOC := $(TMPCLONEROOT_DOCSRC_COMMON)/pardoc-distro.xml
224
225initpardoc: s_docsrc_common
226
227cleanpardoc:
228 $(VERB)rm -rf $(TMPCLONEROOT_DOCSRC_COMMON) ; rm s_docsrc_common
229
230s_docsrc_common: $(TMPCLONEROOT_DOCSRC_COMMON)
231 $(VERB)rm s_docsrc_common 2>/dev/null; ln -s $(TMPCLONEROOT_DOCSRC_COMMON) s_docsrc_common
232
233$(TMPCLONEROOT_DOCSRC_COMMON): s_targets
234 $(VERB)if [ ! -d "$(TMPCLONEROOT)" ] ; then mkdir -p "$(TMPCLONEROOT)" ; fi
235 $(VERB)if [ ! -d $(TMPCLONEROOT_DOCSRC_COMMON) ]; then mkdir -p $(TMPCLONEROOT_DOCSRC_COMMON) ; fi
236 @echo "Copy and patch docsrc_common/ files to $(TMPCLONEROOT_DOCSRC_COMMON)"
237 $(VERB)FIRSTTARGET=`ls -1 s_targets/ | head -1`; \
238 ENEACONF=s_targets/$$FIRSTTARGET/poky/meta-el-common/conf/distro/enea.conf ; \
239 DISTRO_VERSION_MAJOR=`egrep '^DISTRO_VERSION_MAJOR' $$ENEACONF | sed 's/^[^"]*"//;s/".*//'` ; \
240 DISTRO_VERSION_MINOR=`egrep '^DISTRO_VERSION_MINOR' $$ENEACONF | sed 's/^[^"]*"//;s/".*//'` ; \
241 cat docsrc_common/pardoc-distro.xml | sed '/<\/section>/d' | \
242 sed '/<!ENTITY ENEA_LINUX_REL_VER/s/MAJOR.MINOR/'"$$DISTRO_VERSION_MAJOR$$DISTRO_VERSION_MINOR"'/' | \
243 sed '/<!ENTITY . common_poky_entities SYSTEM/s/s_targets\/[^\/]*\/poky/s_targets\/'"$$FIRSTTARGET"'\/poky/' >$(TMPPARDOC) ; \
244 echo "<para id=\"EneaLinux_DISTRO_VERSION_MAJOR\"><phrase>$$DISTRO_VERSION_MAJOR</phrase></para>" >>$(TMPPARDOC) ; \
245 echo "<para id=\"EneaLinux_DISTRO_VERSION_MINOR\"><phrase>$$DISTRO_VERSION_MINOR</phrase></para>" >>$(TMPPARDOC) ; \
246 echo "</section>" >>$(TMPPARDOC)
247
248# ****************************************************************************
249# ***** Create XML chapter with build/boot commands from all README files in s_targets
250
251initbuildboot: $(BUILDBOOT_XML)
252
253cleanbuildboot:
254 $(VERB)rm -f $(BUILDBOOT_XML) 2>/dev/null
255
256
257$(BUILDBOOT_XML): s_targets $(BUILDBOOT_TEMPLATE)
258 @echo "Creating $(BUILDBOOT_XML) from READMEs"
259 $(VERB)INITBB_CMD=initbuildboot.sh ; \
260 if [ -f "$$INITBB_CMD" ]; then \
261 sh "$$INITBB_CMD" -xml $(BUILDBOOT_XML) -template $(BUILDBOOT_TEMPLATE) ; \
262 else \
263 echo "ERROR: Missing $$INITBB_CMD, can not create $(BUILDBOOT_XML)"; exit 10; \
264 fi
265
266# ****************************************************************************
diff --git a/doc/book-enea-linux-open-source/doc/about.xml b/doc/book-enea-linux-open-source/doc/about.xml
index 30f00e9..a3d62f8 100644
--- a/doc/book-enea-linux-open-source/doc/about.xml
+++ b/doc/book-enea-linux-open-source/doc/about.xml
@@ -6,7 +6,7 @@
6 6
7 <para>This document contains the open source and license information 7 <para>This document contains the open source and license information
8 pertaining to the Eclipse package provided with Enea Linux <xi:include 8 pertaining to the Eclipse package provided with Enea Linux <xi:include
9 href="../../docsrc_common/pardoc-distro.xml" 9 href="../../s_docsrc_common/pardoc-distro.xml"
10 xmlns:xi="http://www.w3.org/2001/XInclude" 10 xmlns:xi="http://www.w3.org/2001/XInclude"
11 xpointer="element(EneaLinux_REL_VER/1)" />.</para> 11 xpointer="element(EneaLinux_REL_VER/1)" />.</para>
12</chapter> \ No newline at end of file 12</chapter> \ No newline at end of file
diff --git a/doc/book-enea-linux-open-source/doc/book.xml b/doc/book-enea-linux-open-source/doc/book.xml
index dcc1189..d5da88e 100644
--- a/doc/book-enea-linux-open-source/doc/book.xml
+++ b/doc/book-enea-linux-open-source/doc/book.xml
@@ -6,7 +6,7 @@
6<book id="book_enea_linux_open_source"> 6<book id="book_enea_linux_open_source">
7 <title><trademark class="registered">Enea</trademark> Linux Open Source Report</title> 7 <title><trademark class="registered">Enea</trademark> Linux Open Source Report</title>
8 <subtitle>Release Version 8 <subtitle>Release Version
9 <xi:include href="../../docsrc_common/pardoc-distro.xml" xpointer="element(EneaLinux_REL_VER/1)" 9 <xi:include href="../../s_docsrc_common/pardoc-distro.xml" xpointer="element(EneaLinux_REL_VER/1)"
10 xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> 10 xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle>
11 <xi:include href="../../s_docbuild/template/docsrc_common/bookinfo_userdoc.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> 11 <xi:include href="../../s_docbuild/template/docsrc_common/bookinfo_userdoc.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
12 <xi:include href="about.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> 12 <xi:include href="about.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
diff --git a/doc/book-enea-linux-release-info/doc/about_release.xml b/doc/book-enea-linux-release-info/doc/about_release.xml
index 3cdea52..017f7b2 100644
--- a/doc/book-enea-linux-release-info/doc/about_release.xml
+++ b/doc/book-enea-linux-release-info/doc/about_release.xml
@@ -4,15 +4,16 @@
4<chapter id="relinfo-about-release"> 4<chapter id="relinfo-about-release">
5 <title>About This Release</title> 5 <title>About This Release</title>
6 6
7 <para>This release of Enea Linux 6 provides a publicly available Enea Linux 7 <para>This release of Enea Linux <xi:include
8 distribution for a selected set of targets. This release is generated from 8 href="../../s_docsrc_common/pardoc-distro.xml"
9 branch dizzy-enea<remark>EneaLinux_BRANCH FIXME Is this correct branch, try 9 xmlns:xi="http://www.w3.org/2001/XInclude"
10 to ONLY HAVE THIS INFO in one place, here</remark> of applicable git 10 xpointer="element(EneaLinux_REL_VER/1)" /> provides a publicly available
11 repositories.<remark>MAYBE WE COULD EXTRACT Enea Linux major and minor 11 Enea Linux distribution for a selected set of targets. This release is
12 version from meta-el-common/conf/distro/enea.conf ? This would be via shell 12 generated from the yocto distribution <xi:include
13 code in Makefile, the names clashes with those used in poky.ent. Suggest 13 href="../../s_docsrc_common/pardoc-distro.xml"
14 using the docbuild feature BOOK_PARAM_n (n=1-5) to define parameters in 14 xmlns:xi="http://www.w3.org/2001/XInclude"
15 Makefile that can be used in XML files</remark></para> 15 xpointer="element(Yocto_NAME/1)" />.<remark>INFO Yocto distro autopicked
16 from poky.ent as DISTRO_NAME_NO_CAP</remark></para>
16 17
17 <para>Provided contents:<itemizedlist spacing="compact"> 18 <para>Provided contents:<itemizedlist spacing="compact">
18 <listitem> 19 <listitem>
@@ -36,47 +37,38 @@
36 </listitem> 37 </listitem>
37 38
38 <listitem> 39 <listitem>
39 <para>Eclipse executable plus application development tools (ADT) for 40 <para>Eclipse executable plus development tools for command line and
40 command line and Eclipse</para> 41 Eclipse</para>
41 </listitem> 42 </listitem>
42 </itemizedlist></para> 43 </itemizedlist></para>
43 44
44 <!-- At least one target must be listed otherwise PDF build fails --> 45 <para>Supported targets:</para>
45 46
46 <para>Supported targets:<itemizedlist spacing="compact"> 47 <para><remark>FIXME should autocreate a list of targets, hopefully from the
47 <listitem> 48 generated README file, by using MAKEFILE to update pardoc-distro AND/OR also
48 <para>Freescale P2041RDB<remark> FIXME Why are these listed three 49 auto-create an XML file to includ here with description text for each target
49 times?</remark></para> 50 etc..</remark></para>
50 </listitem>
51 51
52 <para><itemizedlist spacing="compact">
52 <listitem> 53 <listitem>
53 <para>Freescale P3041DS<remark> FIXME Why are these listed three 54 <para>Freescale P2041RDB, Power architecture, No DSPs, Quad-core QorIQ
54 times?</remark></para> 55 P2041 processor, e500mc cores.</para>
55 </listitem> 56 </listitem>
56 57
57 <listitem>
58 <para>Freescale T4240RDB<remark> FIXME Why are these listed three
59 times?</remark></para>
60 </listitem>
61 58
62 <listitem>
63 <para>QEMU PPC</para>
64 </listitem>
65 </itemizedlist></para> 59 </itemizedlist></para>
66 60
67 <para>Kernel configuration:</para> 61 <para>Kernel configuration:</para>
68 62
69 <itemizedlist> 63 <itemizedlist>
70 <listitem> 64 <listitem>
71 <para>P2041RDB: One kernel flavor (release)</para> 65 <para>P2041RDB: One kernel flavor (release)<remark>FIXME Why are these
66 listed three times? Why only "one kernel"??</remark></para>
72 </listitem> 67 </listitem>
73 68
74 <listitem> 69 <listitem>
75 <para>P3041DS: One kernel flavor (release)</para> 70 <para>P3041DS: One kernel flavor (release)<remark>FIXME Why are these
76 </listitem> 71 listed three times?</remark></para>
77
78 <listitem>
79 <para>T4240RDB: Two kernel flavors (release &amp; debug)</para>
80 </listitem> 72 </listitem>
81 73
82 <listitem> 74 <listitem>
@@ -94,32 +86,33 @@
94 <para>Supported versions:<itemizedlist spacing="compact"> 86 <para>Supported versions:<itemizedlist spacing="compact">
95 <listitem> 87 <listitem>
96 <para>Yocto version <xi:include 88 <para>Yocto version <xi:include
97 href="../../docsrc_common/pardoc-distro.xml" 89 href="../../s_docsrc_common/pardoc-distro.xml"
98 xmlns:xi="http://www.w3.org/2001/XInclude" 90 xmlns:xi="http://www.w3.org/2001/XInclude"
99 xpointer="element(Yocto_VER/1)" /><remark>INFO: This is fetched from 91 xpointer="element(Yocto_VER/1)" /><remark>INFO: Auto-fetched from
100 poky.ent via pardoc-distro.xml</remark></para> 92 poky.ent via pardoc-distro.xml</remark></para>
101 </listitem> 93 </listitem>
102 94
103 <listitem> 95 <listitem>
104 <para>poky source version <xi:include 96 <para>poky source version <xi:include
105 href="../../docsrc_common/pardoc-distro.xml" 97 href="../../s_docsrc_common/pardoc-distro.xml"
106 xmlns:xi="http://www.w3.org/2001/XInclude" 98 xmlns:xi="http://www.w3.org/2001/XInclude"
107 xpointer="element(Poky_VER/1)" /><remark>INFO: This is fetched from 99 xpointer="element(Poky_VER/1)" /><remark>INFO: Auto-fetched from
108 poky.ent via pardoc-distro.xml</remark></para> 100 poky.ent via pardoc-distro.xml</remark></para>
109 </listitem> 101 </listitem>
110 102
111 <listitem> 103 <listitem>
112 <para>gcc version: 4.9<remark>was EneaLinux_GCC_VER</remark></para> 104 <para>gcc version: 4.9<remark>was EneaLinux_GCC_VER Not in
105 poky.en</remark></para>
113 </listitem> 106 </listitem>
114 107
115 <listitem> 108 <listitem>
116 <para>Linux kernel version for all targets: 3.12<remark>was 109 <para>Linux kernel version for all targets: 3.12<remark>was
117 EneaLinux_KERNEL_VER</remark></para> 110 EneaLinux_KERNEL_VER Not in poky.ent</remark></para>
118 </listitem> 111 </listitem>
119 112
120 <listitem> 113 <listitem>
121 <para>Eclipse version 4.3 Kepler<remark>was Eclipse_VER and was 114 <para>Eclipse version 4.5 Mars<remark>was Eclipse_VER and was
122 Eclipse_NAME</remark></para> 115 Eclipse_NAME Not in poky.ent</remark></para>
123 </listitem> 116 </listitem>
124 117
125 <listitem> 118 <listitem>
@@ -130,10 +123,10 @@
130 <para>Distribution channel:<itemizedlist spacing="compact"> 123 <para>Distribution channel:<itemizedlist spacing="compact">
131 <listitem> 124 <listitem>
132 <para>All deliverables can be downloaded from <xi:include 125 <para>All deliverables can be downloaded from <xi:include
133 href="../../docsrc_common/pardoc-distro.xml" 126 href="../../s_docsrc_common/pardoc-distro.xml"
134 xmlns:xi="http://www.w3.org/2001/XInclude" 127 xmlns:xi="http://www.w3.org/2001/XInclude"
135 xpointer="element(ULINK_ENEA_LINUX_URL/1)" /> <remark>This is still in 128 xpointer="element(ULINK_ENEA_LINUX_URL/1)" /> <remark>QUEST REMOVE????
136 pardoc-distro.xml</remark></para> 129 This is still in pardoc-distro.xml</remark></para>
137 </listitem> 130 </listitem>
138 </itemizedlist></para> 131 </itemizedlist></para>
139 132
@@ -188,7 +181,7 @@
188 <entry>Packages provided by Yocto</entry> 181 <entry>Packages provided by Yocto</entry>
189 182
190 <entry><para>See the Yocto "Release Notes" <xi:include 183 <entry><para>See the Yocto "Release Notes" <xi:include
191 href="../../docsrc_common/pardoc-distro.xml" 184 href="../../s_docsrc_common/pardoc-distro.xml"
192 xmlns:xi="http://www.w3.org/2001/XInclude" 185 xmlns:xi="http://www.w3.org/2001/XInclude"
193 xpointer="element(ULINK_YOCTO_RELEASE_NOTES/1)" /></para></entry> 186 xpointer="element(ULINK_YOCTO_RELEASE_NOTES/1)" /></para></entry>
194 </row> 187 </row>
@@ -221,19 +214,17 @@
221 <section id="relinfo-documentation"> 214 <section id="relinfo-documentation">
222 <title>Provided Documentation</title> 215 <title>Provided Documentation</title>
223 216
224 <para>The following Enea Linux manuals are available for <xi:include 217 <para>The following Enea Linux manuals are available:</para>
225 href="../../docsrc_common/pardoc-distro.xml"
226 xmlns:xi="http://www.w3.org/2001/XInclude"
227 xpointer="element(EneaLinux_REL_VER/1)" />:</para>
228 218
229 <itemizedlist spacing="compact"> 219 <itemizedlist spacing="compact">
230 <listitem> 220 <listitem>
231 <para>README.htm - top page of the documentation</para> 221 <para>README.htm - top page of the documentation<remark>FIXME Needs to
222 be fixed to easily find also online doc</remark></para>
232 </listitem> 223 </listitem>
233 224
234 <listitem> 225 <listitem>
235 <para>README.release - text file describing the release contents, 226 <para>README - text files describing various details like build- and
236 installation, and quick getting started</para> 227 boot-commands</para>
237 </listitem> 228 </listitem>
238 229
239 <listitem> 230 <listitem>
@@ -242,12 +233,6 @@
242 </listitem> 233 </listitem>
243 234
244 <listitem> 235 <listitem>
245 <para><olink targetdoc="book_enea_linux_users_guide"
246 targetptr="book_enea_linux_users_guide"><trademark
247 class="registered">Enea</trademark> Linux User's Guide</olink></para>
248 </listitem>
249
250 <listitem>
251 <para><olink targetdoc="book_enea_linux_open_source" 236 <para><olink targetdoc="book_enea_linux_open_source"
252 targetptr="book_enea_linux_open_source"><trademark 237 targetptr="book_enea_linux_open_source"><trademark
253 class="registered">Enea</trademark> Linux Open Source 238 class="registered">Enea</trademark> Linux Open Source
@@ -262,6 +247,29 @@
262 </listitem> 247 </listitem>
263 </itemizedlist> 248 </itemizedlist>
264 249
250 <para>User's Guides are available online, not inside the
251 distribution.</para>
252
253 <itemizedlist spacing="compact">
254 <listitem>
255 <para><ulink
256 url="https://portal.enea.com/wp-content/uploads/_mediavault/book-enea-linux-application-dev-guide.pdf">Enea
257 Linux Application User's Guide</ulink>
258 (https://portal.enea.com/wp-content/uploads/_mediavault/book-enea-linux-applications-dev-guide.pdf)</para>
259 </listitem>
260
261 <listitem>
262 <para><ulink
263 url="https://portal.enea.com/wp-content/uploads/_mediavault/book-enea-linux-platforms-dev-guide.pdf">Enea
264 Linux Platforms User's Guide</ulink>
265 (https://portal.enea.com/wp-content/uploads/_mediavault/book-enea-linux-platforms-dev-guide.pdf)</para>
266 </listitem>
267 </itemizedlist>
268
269 <para>How to use Eclipse is described inside the Enea Linux user's guides.
270 Eclipse's own documentation is available in directory
271 <filename>eclipse/readme</filename>.</para>
272
265 <para>The Enea Linux Eclipse tarball and Eclipse Open Source Report is 273 <para>The Enea Linux Eclipse tarball and Eclipse Open Source Report is
266 inherited from Enea Linux 4.0. How to use Eclipse is described inside the 274 inherited from Enea Linux 4.0. How to use Eclipse is described inside the
267 <olink targetdoc="book_enea_linux_users_guide" 275 <olink targetdoc="book_enea_linux_users_guide"
diff --git a/doc/book-enea-linux-release-info/doc/book.xml b/doc/book-enea-linux-release-info/doc/book.xml
index 3212850..2be87b0 100644
--- a/doc/book-enea-linux-release-info/doc/book.xml
+++ b/doc/book-enea-linux-release-info/doc/book.xml
@@ -5,10 +5,12 @@
5<book id="book_enea_linux_release_info"> 5<book id="book_enea_linux_release_info">
6 <title><trademark class="registered">Enea</trademark> Linux Release Information</title> 6 <title><trademark class="registered">Enea</trademark> Linux Release Information</title>
7 <subtitle>Release Version 7 <subtitle>Release Version
8 <xi:include href="../../docsrc_common/pardoc-distro.xml" xpointer="element(EneaLinux_REL_VER/1)" 8 <xi:include href="../../s_docsrc_common/pardoc-distro.xml" xpointer="element(EneaLinux_REL_VER/1)"
9 xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle> 9 xmlns:xi="http://www.w3.org/2001/XInclude" /></subtitle>
10 <xi:include href="../../s_docbuild/template/docsrc_common/bookinfo_userdoc.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> 10 <xi:include href="../../s_docbuild/template/docsrc_common/bookinfo_userdoc.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
11 <xi:include href="about_release.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> 11 <xi:include href="about_release.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
12 <xi:include href="prerequisites.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
13 <xi:include href="build_boot_generated.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
12 <xi:include href="main_changes.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> 14 <xi:include href="main_changes.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
13 <xi:include href="known_bugs_and_limitations.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> 15 <xi:include href="known_bugs_and_limitations.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
14 <xi:include href="extracted_info.xml" xmlns:xi="http://www.w3.org/2001/XInclude" /> 16 <xi:include href="extracted_info.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
diff --git a/doc/book-enea-linux-release-info/doc/build_boot_template.xml b/doc/book-enea-linux-release-info/doc/build_boot_template.xml
new file mode 100644
index 0000000..709e624
--- /dev/null
+++ b/doc/book-enea-linux-release-info/doc/build_boot_template.xml
@@ -0,0 +1,26 @@
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
3"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
4<chapter id="target_build_boot">
5 <title>Target Specific Build and Boot Instructions</title>
6
7 <para>For each target, a README file contains the build and boot
8 instructions. To make it easier for the reader, the contents of these
9 build/boot instruction have been extracted below into this release
10 information document.</para>
11
12 <para>The README files are parts of the distribution and can be seen after
13 the distribution is fetched.<remark>NOTE: Only EDIT THE TEMPLATE FILE! A new
14 build_boot.xml file is created from the template and sections are added
15 below automatically from the README files for each target when building the
16 book! Only in the template file you see a line below with SCRIPT_...._HERE
17 and the text telling that this is a template file.</remark></para>
18
19 <para>SCRIPT_INCLUDES_BUILD_BOOT_SECTIONS_HERE</para>
20
21 <para><emphasis role="bold">This is a template file which you can edit. When
22 the book is built, a new XML chapter file is created where the above part of
23 this file is copied to the new XML file and all from the line above is
24 replaced automatically by build and boot sections from the README
25 files!</emphasis></para>
26</chapter> \ No newline at end of file
diff --git a/doc/book-enea-linux-release-info/doc/main_changes.xml b/doc/book-enea-linux-release-info/doc/main_changes.xml
index 88ae1ef..2e6555b 100644
--- a/doc/book-enea-linux-release-info/doc/main_changes.xml
+++ b/doc/book-enea-linux-release-info/doc/main_changes.xml
@@ -5,7 +5,7 @@
5 <title>Main Changes</title> 5 <title>Main Changes</title>
6 6
7 <para>This chapter describes the major changes and additions in the Enea 7 <para>This chapter describes the major changes and additions in the Enea
8 Linux <xi:include href="../../docsrc_common/pardoc-distro.xml" 8 Linux <xi:include href="../../s_docsrc_common/pardoc-distro.xml"
9 xmlns:xi="http://www.w3.org/2001/XInclude" 9 xmlns:xi="http://www.w3.org/2001/XInclude"
10 xpointer="element(EneaLinux_REL_VER/1)" /> release compared to the previous 10 xpointer="element(EneaLinux_REL_VER/1)" /> release compared to the previous
11 general Enea Linux release (4.0-140919).</para> 11 general Enea Linux release (4.0-140919).</para>
@@ -44,17 +44,17 @@
44 <itemizedlist spacing="compact"> 44 <itemizedlist spacing="compact">
45 <listitem> 45 <listitem>
46 <para>Enea Linux <xi:include 46 <para>Enea Linux <xi:include
47 href="../../docsrc_common/pardoc-distro.xml" 47 href="../../s_docsrc_common/pardoc-distro.xml"
48 xmlns:xi="http://www.w3.org/2001/XInclude" 48 xmlns:xi="http://www.w3.org/2001/XInclude"
49 xpointer="element(EneaLinux_REL_VER/1)" /> is based on Yocto 49 xpointer="element(EneaLinux_REL_VER/1)" /> is based on Yocto
50 <xi:include href="../../docsrc_common/pardoc-distro.xml" 50 <xi:include href="../../s_docsrc_common/pardoc-distro.xml"
51 xmlns:xi="http://www.w3.org/2001/XInclude" 51 xmlns:xi="http://www.w3.org/2001/XInclude"
52 xpointer="element(Yocto_VER/1)" /> (was 1.6)</para> 52 xpointer="element(Yocto_VER/1)" /> (was 1.6)</para>
53 </listitem> 53 </listitem>
54 54
55 <listitem> 55 <listitem>
56 <para>The poky source version is <xi:include 56 <para>The poky source version is <xi:include
57 href="../../docsrc_common/pardoc-distro.xml" 57 href="../../s_docsrc_common/pardoc-distro.xml"
58 xmlns:xi="http://www.w3.org/2001/XInclude" 58 xmlns:xi="http://www.w3.org/2001/XInclude"
59 xpointer="element(Poky_VER/1)" /> (was daisy-11.0)</para> 59 xpointer="element(Poky_VER/1)" /> (was daisy-11.0)</para>
60 </listitem> 60 </listitem>
diff --git a/doc/book-enea-linux-release-info/doc/prerequisites.xml b/doc/book-enea-linux-release-info/doc/prerequisites.xml
new file mode 100644
index 0000000..7241ed1
--- /dev/null
+++ b/doc/book-enea-linux-release-info/doc/prerequisites.xml
@@ -0,0 +1,75 @@
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
3"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
4<chapter id="prerequisites">
5 <title>Prerequisites and Getting Enea Linux</title>
6
7 <section id="inst-host-packages">
8 <title>Install Host Packages</title>
9
10 <para>Building Enea Linux or compiling applications requires some packages
11 to be installed on your Linux development host. See the list of Required
12 Packages for Host Development System, found in the Yocto 2.1 document:
13 <ulink
14 url="https://www.yoctoproject.org/docs/2.1/ref-manual/ref-manual.html#required-packages-for-the-host-development-system">https://www.yoctoproject.org/docs/2.1/ref-manual/ref-manual.html#required-packages-for-the-host-development-system</ulink>.
15 If needed, replace 2.1 with the actual Yocto version in your Enea Linux
16 distribution.<remark>Sorry by the list in the Yocto document do not seem
17 to be enough at all at least for platform building! Therefore we need to
18 add a complete list here, and we actually have a bigger list than we
19 needed, but it's better to have more and not be needed than to lack
20 information.</remark></para>
21
22 <para>Install Host Packages</para>
23
24 <note>
25 <para>The list below is generic and might contain packages that are not
26 necessary. Additional packages might be required to build for some
27 targets. See the Enea Linux Release Information if more packages are
28 needed and which hosts have been tested by Enea for this Enea Linux
29 release.<remark>QUEST: Are the lists below ok? The lists below try to
30 cover ALL normal use cases for both ApplGuide and PlatfGuide, incl.
31 Eclipse, instead of limiting to some use case. Easier to keep
32 updated.</remark></para>
33 </note>
34
35 <section id="inst-host-packages-ubuntu-debian">
36 <title>Ubuntu or Debian</title>
37
38 <para>Ensure the system is up-to-date:</para>
39
40 <programlisting>$ sudo apt-get update</programlisting>
41
42 <para>For a supported <emphasis role="bold">Ubuntu</emphasis><indexterm>
43 <primary>Ubuntu</primary>
44 </indexterm> and <emphasis role="bold">Debian</emphasis><indexterm>
45 <primary>Debian</primary>
46 </indexterm> distributions you need the following packages:</para>
47
48 <programlisting># sudo apt-get install sed wget subversion git-core
49coreutils unzip texi2html texinfo libsdl1.2-dev docbook-utils fop gawk
50python-pysqlite2 diffstat make gcc build-essential xsltproc g++
51desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev autoconf automake
52groff libtool xterm libxml-parser-perl</programlisting>
53 </section>
54 </section>
55
56 <section id="get-el">
57 <title>Getting Enea Linux</title>
58
59 <para>For platform developers, an Enea Linux release is available for
60 cloning from git.enea.com. Releases are available in distribution-specific
61 repositories on git.enea.com, for cloning using the repo tool in the local
62 workstation. For more information on this topic, see the <olink
63 targetdoc="book_enea_linux_platforms_dev_guide"
64 targetptr="book_enea_linux_platforms_dev_guide">Enea Linux Platforms
65 Development Guide</olink> on <ulink
66 url="http://portal.enea.com">http://portal.enea.com</ulink>.</para>
67
68 <para>Application developers will download pre-complied images from the
69 Enea Portal or will receive prebuilt images from the platform developers.
70 For further information on this see <olink
71 targetdoc="book_enea_linux_app_dev_guide"
72 targetptr="book_enea_linux_app_dev_guide">Enea Linux Application
73 Development Guide</olink>.</para>
74 </section>
75</chapter> \ No newline at end of file
diff --git a/doc/book-enea-linux-release-info/doc/supported_features.xml b/doc/book-enea-linux-release-info/doc/supported_features.xml
index 11e49b1..ebc4b59 100644
--- a/doc/book-enea-linux-release-info/doc/supported_features.xml
+++ b/doc/book-enea-linux-release-info/doc/supported_features.xml
@@ -6,7 +6,7 @@
6 6
7 <para>The basic features provided by Yocto are listed on the "Features" tab 7 <para>The basic features provided by Yocto are listed on the "Features" tab
8 on the <xi:include 8 on the <xi:include
9 href="../../docsrc_common/pardoc-distro.xml" 9 href="../../s_docsrc_common/pardoc-distro.xml"
10 xmlns:xi="http://www.w3.org/2001/XInclude" 10 xmlns:xi="http://www.w3.org/2001/XInclude"
11 xpointer="element(ULINK_YOCTO_RELEASE_NOTES/1)" /><remark>???? FIXME THIS WAS "ULINK_YOCTO_DOWN_MINOR_URL" in previous pardoc-distro file - I don't know what is shall be 11 xpointer="element(ULINK_YOCTO_RELEASE_NOTES/1)" /><remark>???? FIXME THIS WAS "ULINK_YOCTO_DOWN_MINOR_URL" in previous pardoc-distro file - I don't know what is shall be
12 now. Perhaps it is Yocto release notes which I have changed this to, as found in poky.ent</remark>.</para> 12 now. Perhaps it is Yocto release notes which I have changed this to, as found in poky.ent</remark>.</para>
diff --git a/doc/docsrc_common/pardoc-distro.xml b/doc/docsrc_common/pardoc-distro.xml
index 129d7a5..9c9edd6 100644
--- a/doc/docsrc_common/pardoc-distro.xml
+++ b/doc/docsrc_common/pardoc-distro.xml
@@ -5,7 +5,7 @@
5============================== 5==============================
6--> 6-->
7<!-- Distribution and release --> 7<!-- Distribution and release -->
8<!ENTITY ENEA_LINUX_REL_VER "6-Networking"> <!-- used also in Makefile --> 8<!ENTITY ENEA_LINUX_REL_VER "MAJOR.MINOR-Networking"> <!-- TEMPLATE LINE, IS PATCHED by Makefile with values from enea.conf in poky/ -->
9<!ENTITY % common_poky_entities SYSTEM "../s_targets/qemuarm/poky/documentation/poky.ent"> 9<!ENTITY % common_poky_entities SYSTEM "../s_targets/qemuarm/poky/documentation/poky.ent">
10%common_poky_entities; 10%common_poky_entities;
11]> 11]>
@@ -24,8 +24,6 @@
24 24
25 <para>**** The phrase elements below can be used as variables in several 25 <para>**** The phrase elements below can be used as variables in several
26 places in XML files ****</para> 26 places in XML files ****</para>
27 <para>**** In addition: Makefile parses variable REL_VER from entity ENEA_LINUX_REL_VER,
28 after which swcomp.mk extracts BOOK_VER from variable REL_VER ****</para>
29 27
30 <para>You can add more elements using ENTITY lines in poky.ent, e.g. like Poky_VER below</para> 28 <para>You can add more elements using ENTITY lines in poky.ent, e.g. like Poky_VER below</para>
31 29
@@ -34,5 +32,6 @@
34<para id="ULINK_ENEA_LINUX_URL"><ulink url='https://linux.enea.com/&ENEA_LINUX_REL_VER;'>https://linux.enea.com/&ENEA_LINUX_REL_VER;</ulink></para> 32<para id="ULINK_ENEA_LINUX_URL"><ulink url='https://linux.enea.com/&ENEA_LINUX_REL_VER;'>https://linux.enea.com/&ENEA_LINUX_REL_VER;</ulink></para>
35<para id="Poky_VER"><phrase>&POKYVERSION;</phrase></para> 33<para id="Poky_VER"><phrase>&POKYVERSION;</phrase></para>
36<para id="Yocto_VER"><phrase>&DISTRO;</phrase></para> 34<para id="Yocto_VER"><phrase>&DISTRO;</phrase></para>
35<para id="Yocto_NAME"><phrase>&DISTRO_NAME_NO_CAP;</phrase></para>
37<para id="ULINK_YOCTO_RELEASE_NOTES"><ulink url='&YOCTO_RELEASE_NOTES;'>&YOCTO_RELEASE_NOTES;</ulink></para> 36<para id="ULINK_YOCTO_RELEASE_NOTES"><ulink url='&YOCTO_RELEASE_NOTES;'>&YOCTO_RELEASE_NOTES;</ulink></para>
38</section> 37</section>
diff --git a/doc/initbuildboot.sh b/doc/initbuildboot.sh
new file mode 100644
index 0000000..72606a6
--- /dev/null
+++ b/doc/initbuildboot.sh
@@ -0,0 +1,111 @@
1#!/bin/sh
2VER="R0.06"
3
4BBTEMPLATE=
5BBXML=
6
7USAGE="`basename $0` -xml buildbootxml-to-create -template templatexml-file ($VER)
8 Currently only supports sequence types Build-command: and Boot-command:
9 Both files should have path book-*release-info/doc/
10 Creates the XML file from the template, inserting build/boot commands
11 from the various s_targets/XXXtargetXXX/README files
12 at the place in template with >SCRIPT_INCLUDES_BUILD_BOOT_SECTIONS_HERE<
13 ignoring rest of template
14 The code tries to fold too long lines, but this is not perfect. Best would
15 be if the command lines already in README are short enough, e.g. by
16 using short variables, which work both on shell and uboot command lines"
17
18while echo "x$1" | egrep '^x-' >/dev/null 2>&1
19do
20 OPT="$1" ; shift
21 if [ "$OPT" = "--help" -o "$OPT" = "-h" -o "$OPT" = "-help" ] ; then echo "$USAGE" ; exit ; fi
22 if [ "$OPT" = "-xml" ] ; then BBXML="$1" ; shift; fi
23 if [ "$OPT" = "-template" ] ; then BBTEMPLATE="$1" ; shift; fi
24done
25if [ "$BBTEMPLATE" = "" ]; then echo "ERROR: Missing option -template templatefile"; exit ; fi
26if [ "$BBXML" = "" ]; then echo "ERROR: Missing option -xml buildbootxml-to-create"; exit ; fi
27if [ ! -f "$BBTEMPLATE" ]; then echo "ERROR: Missing templatefile '$BBTEMPLATE'"; exit; fi
28if [ ! -d "`dirname \"$BBXML\"`" ]; then echo "ERROR: Missing parent directory for '$BBXML'"; exit ; fi
29
30echo "`basename $0` Creating $BBXML from"
31TARGETREADMES=`cd s_targets ; ls -d */README | tr '\n' ' '`
32echo " $TARGETREADMES"
33
34# README file formats:
35# a) Sequence starts: ___ XXXX:yyyy or ___ XXXX:yyyy conffile
36# where XXXX is a type, yyyy is text to be in title
37# b) Inside sequence: ___ END ends the sequence (ignore rest of line)
38# c) Inside sequence: # Documentation line
39# d) Inside sequence: Anything else is command or config lines
40# Conv.to XML: ">" "<" "&" and put all inside <programlisting>
41# *) Anywhere ____xxxx Leading 4 underlines or more, always ignored
42# unless one of the recognized XXXX
43# *) Anywhere outside sequence, ignore all
44# *) There can be multiple of each type of sequence in each README file
45# with different yyyy
46
47
48cat $BBTEMPLATE | awk '
49 />SCRIPT_INCLUDES_BUILD_BOOT_SECTIONS_HERE</ {exit 0; }
50 { print $0; }
51' >$BBXML
52
53
54# Long command lines: The awk code below breaks too long lines, but this is not perfect.
55extractcmds_filter() {
56 echo " <programlisting>" | tr -d '\n'
57 sed '/^___/d;s/\&/\&amp;/g' | sed 's/</\&lt;/g;s/>/\&gt;/g;/^$/d' | \
58 awk 'BEGIN { MAX=90; }
59 ( length($0) > MAX ) {
60 LINE=$0;
61 while (length(LINE) > MAX) {
62 if (index(LINE," ") == 0 ) {
63 print "ERROR: PROBLEM: No space in too long line:" LINE > "/dev/stderr";
64 print $LINE;
65 next;
66 }
67 i=MAX; while ( substr(LINE,i,1) != " " ) { i=i-1; if (i==0) {break;} }
68 print substr(LINE,0,i) "\\";
69 REST=substr(LINE,i+1);
70 if ( length(REST) == 0 ) { next ; }
71 LINE=" " REST;
72 }
73 if ( length(LINE) > 0 ) { print LINE; next ; }
74 }
75 { print;}'
76 echo "</programlisting>"
77}
78
79extractcmds_for_type() { # target/README BOOTorBUILD
80 README=s_targets/"$1"
81 CMDTYPE="$2"
82 COMMANDSFOR=`egrep "___$CMDTYPE:" $README`
83 for CMDS in $COMMANDSFOR
84 do
85 cmdsfor=`echo "$CMDS" | sed 's/[^:]*://'`
86 echo " <para>$CMDTYPE for $cmdsfor</para>"
87 cat "$README" | sed -n "/$COMMANDSFOR/,/___END/p" | extractcmds_filter
88 done
89}
90
91for targetreadme in $TARGETREADMES
92do
93 TARGET=`dirname $targetreadme`
94 echo "" >>$BBXML
95 echo " <section id=\"target_$TARGET\">" >>$BBXML
96 echo " <title>Target $TARGET - Build and Boot Instructions</title>" >>$BBXML
97 echo " <remark>NOTE: DO NOT EDIT THIS GENERATED FILE! Only edit the template file.</remark>" >>$BBXML
98 echo " <section>" >>$BBXML
99 echo " <title>Build Instructions</title>" >>$BBXML
100 extractcmds_for_type $targetreadme Build-command >>$BBXML
101 echo " </section>" >>$BBXML
102 echo "" >>$BBXML
103 echo " <section>" >>$BBXML
104 echo " <title>Boot Instructions</title>" >>$BBXML
105 extractcmds_for_type $targetreadme Boot-command >>$BBXML
106 echo " </section>" >>$BBXML
107 echo " </section>" >>$BBXML
108done
109
110echo "</chapter>" >>$BBXML
111echo "Ready created $BBXML"