From d4c585068c0dcfc9f13e5dc4f66f6c51ae92ad35 Mon Sep 17 00:00:00 2001 From: Miruna Paun Date: Tue, 25 Oct 2016 16:30:13 +0200 Subject: Autogenerate list of manifest files for repo cmd From the manifest, autocreate an XML file with a list of the manifest files which can be used in the repo command, and including this XML file in the release info. Also changed the prompt in prerequisites.xml from # to $ Signed-off-by: Miruna Paun --- doc/Makefile | 18 +++++++- .../doc/getting_enea_linux.xml | 51 ++++++++-------------- .../doc/prerequisites.xml | 2 +- 3 files changed, 35 insertions(+), 36 deletions(-) diff --git a/doc/Makefile b/doc/Makefile index c7569e9..7982e0c 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -32,6 +32,8 @@ BUILDBOOT_TEMPLATE := book-enea-linux-release-info/doc/build_boot_template.xml PKGDIFF_GEN_XML := book-enea-linux-release-info/doc/pkgdiff_generated.xml JIRA_ISSUES_GEN_XML := book-enea-linux-release-info/doc/jiraissues_generated.xml +MANIFESTFILES_XML := book-enea-linux-release-info/doc/manifestfiles_generated.xml + # ----------------------------------------------------- #Path to DocBook make files and templates @@ -200,7 +202,7 @@ endif endif # cleaninit cleans ALL tmpcommon and all s_* -clean: cleaninit cleanbuildboot cleanpkgdiff cleanissues +clean: cleaninit cleanbuildboot cleanpkgdiff cleanissues cleanmanifest @echo "Cleaning build results and temporary files" $(VERB)rm -rf doc tmp 2>/dev/null ifneq ($(filter book-%, $(COMPONENTS)),) @@ -226,6 +228,11 @@ inittargets: s_targets s_manifest: $(TMPCLONEROOT_MANIFEST) $(VERB)rm s_manifest 2>/dev/null; ln -s $(TMPCLONEROOT_MANIFEST) s_manifest +cleanmanifest: + @echo "Cleaning generated manifestfilelist XML document file" + $(VERB)rm -f $(MANIFESTFILES_XML) 2>/dev/null + $(VERB)rm -rf "$(TMPCLONEROOT_MANIFEST)" s_manifest 2>/dev/null + $(TMPCLONEROOT_MANIFEST): $(VERB)if [ ! -d "$(TMPCLONEROOT)" ] ; then mkdir -p "$(TMPCLONEROOT)" ; fi $(VERB)if [ ! -d "$(TMPCLONEROOT_MANIFEST)" ]; then mkdir -p "$(TMPCLONEROOT_MANIFEST)" ; fi @@ -235,7 +242,14 @@ $(TMPCLONEROOT_MANIFEST): $(VERB)if [ ! -d "$(TMPCLONEROOT_MANIFEST)/$(MANIFESTDIR)" ]; then echo "ERROR: Missing $(TMPCLONEROOT_MANIFEST)/$(MANIFESTDIR)"; exit 10 ; fi ; \ TARGETDEFAULTXMLS=`cd $(TMPCLONEROOT_MANIFEST)/$(MANIFESTDIR); ls -1 */default.xml 2>/dev/null` ; \ echo "$$TARGETDEFAULTXMLS" | tr '\n' ' ' >$(TMPCLONEROOT_MANIFEST)/targetdefaultxmls.txt ; \ - echo "$$TARGETDEFAULTXMLS" | sed 's/\/.*//' | tr '\n' ' ' >$(TMPCLONEROOT_MANIFEST)/targetids.txt + echo "$$TARGETDEFAULTXMLS" | sed 's/\/.*//' | tr '\n' ' ' >$(TMPCLONEROOT_MANIFEST)/targetids.txt ; \ + echo "" >$(MANIFESTFILES_XML) ; \ + echo ">$(MANIFESTFILES_XML) ; \ + echo "\"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd\">" >>$(MANIFESTFILES_XML) ; \ + echo "
" >>$(MANIFESTFILES_XML) ; \ + echo "$$TARGETDEFAULTXMLS" >>$(MANIFESTFILES_XML) ; \ + echo "
" >>$(MANIFESTFILES_XML) + # ----------------------------------------- # Use repo to auto-clone each target separately - VERY LARGE if there are many targets (5 targets => about 1.3 Gbytes) diff --git a/doc/book-enea-linux-release-info/doc/getting_enea_linux.xml b/doc/book-enea-linux-release-info/doc/getting_enea_linux.xml index f25c1a5..93a5c59 100644 --- a/doc/book-enea-linux-release-info/doc/getting_enea_linux.xml +++ b/doc/book-enea-linux-release-info/doc/getting_enea_linux.xml @@ -41,45 +41,30 @@ $ chmod a+x ~/bin/repoThe instruction assumes that ~/bin - Use the repo tool to download the source:FIXME: Before - final release the tag for the manifest must be set in Makefile as - MANIFESTHASH, typically something like refs/tags/EL6. Before that, a - generic branch name is used instead, e.g. krogoth in - Makefile - - $ mkdir enea-linux + Use the repo tool to download the source:FIXME: At final + release the tag for the manifest must be set in mainfest_conf.mk as + MANIFESTHASH, typically something like refs/tags/EL6. Before final + release, it is possible to set MANIFESTHASH on the make command line + to override the value, e.g. with a commit hash string for a release + candidate to be tested + + $ mkdir enea-linux $ cd enea-linux $ repo init -u \ + xmlns:xi="http://www.w3.org/2001/XInclude" + xpointer="element(EneaLinux_MANIFESTURL/1)" /> \ -b \ + xmlns:xi="http://www.w3.org/2001/XInclude" + xpointer="element(EneaLinux_MANIFESTHASH/1)" /> \ -m <manifest file> -$ repo sync - - The parameter <manifest file> depends on the target. See - the following table: - - - - - - Target - - Manifest file - - +$ repo sync - - - P2041RDB + The parameter <manifest file> depends on the target. Use + the following: - p2041rdb/default.xml - - - - + diff --git a/doc/book-enea-linux-release-info/doc/prerequisites.xml b/doc/book-enea-linux-release-info/doc/prerequisites.xml index 3b55b26..71f7d7e 100644 --- a/doc/book-enea-linux-release-info/doc/prerequisites.xml +++ b/doc/book-enea-linux-release-info/doc/prerequisites.xml @@ -18,7 +18,7 @@ Ubuntu distribution you need the following packages: - # sudo apt-get install sed wget subversion git-core + $ sudo apt-get install sed wget subversion git-core coreutils unzip texi2html texinfo libsdl1.2-dev docbook-utils fop gawk python-pysqlite2 diffstat make gcc build-essential xsltproc g++ desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev autoconf automake -- cgit v1.2.3-54-g00ecf