Merge lp:~tplavcic/percona-xtrabackup/bug1156209-2.2 into lp:percona-xtrabackup/2.2

Proposed by Tomislav Plavcic
Status: Merged
Approved by: Alexey Kopytov
Approved revision: no longer in the source branch.
Merged at revision: 5064
Proposed branch: lp:~tplavcic/percona-xtrabackup/bug1156209-2.2
Merge into: lp:percona-xtrabackup/2.2
Diff against target: 531 lines (+98/-319)
12 files modified
.bzrignore (+1/-1)
cmake/build_configurations/xtrabackup_release.cmake (+2/-0)
storage/innobase/xtrabackup/.bzrignore (+1/-1)
storage/innobase/xtrabackup/CMakeLists.txt (+1/-0)
storage/innobase/xtrabackup/doc/Makefile (+0/-143)
storage/innobase/xtrabackup/doc/make.bat (+0/-170)
storage/innobase/xtrabackup/doc/source/CMakeLists.txt (+80/-0)
storage/innobase/xtrabackup/utils/build-binary.sh (+1/-1)
storage/innobase/xtrabackup/utils/debian/control (+3/-1)
storage/innobase/xtrabackup/utils/debian/percona-xtrabackup.install (+1/-0)
storage/innobase/xtrabackup/utils/debian/rules (+1/-1)
storage/innobase/xtrabackup/utils/percona-xtrabackup.spec (+7/-1)
To merge this branch: bzr merge lp:~tplavcic/percona-xtrabackup/bug1156209-2.2
Reviewer Review Type Date Requested Status
Alexey Kopytov (community) Approve
Review via email: mp+247329@code.launchpad.net

This proposal supersedes a proposal from 2015-01-21.

Description of the change

Man pages were added before but they were not build and added into packages/tarball.
Changes were made to our build nodes to support sphinx-build and also made changes in cmake and packages to generate man pages on build and include them into packages.
Removed: Makefile and make.bat from utils/doc directory.
Added -DWITH_MAN_PAGES option which is turned on by default.
Added -DWITH_HTML_DOCS, -DWITH_LATEX_DOCS, -DWITH_PDF_DOCS options which are turned off by default.

To post a comment you must log in.
Revision history for this message
Tomislav Plavcic (tplavcic) wrote : Posted in a previous version of this proposal

Test packages are available here:
http://jenkins.percona.com/view/Percona-RELEASES/job/percona-xtrabackup-2.2-RELEASE/46/
http://jenkins.percona.com/view/Percona-RELEASES/job/percona-xtrabackup-2.3-RELEASE/4/
nevermind the yellow build for 2.3 for centos5-32 it was some connection problem and it was successful when restarted.

Revision history for this message
Alexey Kopytov (akopytov) wrote : Posted in a previous version of this proposal

General comments:

- shouldn't we remove doc/Makefile and doc/make.bat? That would also require re-imlementing the remaining bits from Makefile in doc/source/CMakeLists.txt. How much work would that require?

- please add a CMake configuration option (-DWITH_MAN_PAGES, ON by default) so that it would be possible to build xtrabackup without man pages on systems without sphinx installed.

review: Needs Fixing
Revision history for this message
Tomislav Plavcic (tplavcic) wrote : Posted in a previous version of this proposal

Thanks Alexey, some good comments.
1. Will check with Hrvoje which building options he actually uses and what it would take to move them.
2. Will do.

Revision history for this message
Tomislav Plavcic (tplavcic) wrote : Posted in a previous version of this proposal
Download full text (4.2 KiB)

Resubmitting MP - here are the changes:
Regarding #1:
I have removed Makefile and make.bat from doc and added into cmake builds for html, latex and pdf - checked with Hrvoje and it seems that are the ones we use. Also changed jenkins documentation jobs to reflect new changes.

Regarding #2: Added option -DWITH_MAN_PAGES which is turned on by default. Also new options which are turned off by default are -DWITH_HTML_DOCS, -DWITH_LATEX_DOCS and -DWITH_PDF_DOCS and those are currently used by new jenkins documentation jobs.

Here's some testing:
PXB 2.2:
--------
TEST PACKAGES:
http://jenkins.percona.com/view/Percona-RELEASES/job/percona-xtrabackup-2.2-RELEASE/47/

RPM:
plavi@zoidberg:pxb $ rpm -qlp percona-xtrabackup-2.2.7-5061.el6.x86_64.rpm|grep man
/usr/share/man/man1/innobackupex.1.gz
/usr/share/man/man1/xbcrypt.1.gz
/usr/share/man/man1/xbstream.1.gz
/usr/share/man/man1/xtrabackup.1.gz

DEB:
plavi@zoidberg:pxb $ dpkg -c percona-xtrabackup_2.2.7-5061-1.trusty_amd64.deb|grep man
drwxr-xr-x root/root 0 2015-01-20 17:11 ./usr/share/man/
drwxr-xr-x root/root 0 2015-01-20 17:11 ./usr/share/man/man1/
-rw-r--r-- root/root 24486 2015-01-20 17:11 ./usr/share/man/man1/innobackupex.1.gz
-rw-r--r-- root/root 808 2015-01-20 17:11 ./usr/share/man/man1/xbcrypt.1.gz
-rw-r--r-- root/root 20415 2015-01-20 17:11 ./usr/share/man/man1/xtrabackup.1.gz
-rw-r--r-- root/root 1230 2015-01-20 17:11 ./usr/share/man/man1/xbstream.1.gz

TAR:
plavi@zoidberg:pxb $ tar -ztvf percona-xtrabackup-2.2.7-5061-Linux-x86_64.tar.gz|grep man
drwxr-xr-x root/root 0 2015-01-20 17:09 percona-xtrabackup-2.2.7-Linux-x86_64/man/
drwxr-xr-x root/root 0 2015-01-20 17:09 percona-xtrabackup-2.2.7-Linux-x86_64/man/man1/
-rw-r--r-- root/root 69420 2015-01-20 17:07 percona-xtrabackup-2.2.7-Linux-x86_64/man/man1/xtrabackup.1
-rw-r--r-- root/root 2084 2015-01-20 17:07 percona-xtrabackup-2.2.7-Linux-x86_64/man/man1/xbcrypt.1
-rw-r--r-- root/root 92762 2015-01-20 17:07 percona-xtrabackup-2.2.7-Linux-x86_64/man/man1/innobackupex.1
-rw-r--r-- root/root 2834 2015-01-20 17:07 percona-xtrabackup-2.2.7-Linux-x86_64/man/man1/xbstream.1

JENKINS DOCUMENTATION JOBS:
http://jenkins.percona.com/view/PXB%202.2/job/percona-xtrabackup-2.2-documentation-pdf-new/3/
http://jenkins.percona.com/view/PXB%202.2/job/percona-xtrabackup-2.2-documentation-new/1/

PXB 2.3:
--------
TEST PACKAGES:
http://jenkins.percona.com/view/Percona-RELEASES/job/percona-xtrabackup-2.3-RELEASE/6/

RPM:
plavi@zoidberg:pxb $ rpm -qlp percona-xtrabackup-23-2.3.0-5062.alpha1.el7.x86_64.rpm |grep man
/usr/share/man/man1/innobackupex.1.gz
/usr/share/man/man1/xbcrypt.1.gz
/usr/share/man/man1/xbstream.1.gz
/usr/share/man/man1/xtrabackup.1.gz

DEB:
plavi@zoidberg:pxb $ dpkg -c percona-xtrabackup-23_2.3.0-5062.alpha1-1.trusty_amd64.deb|grep man
drwxr-xr-x root/root 0 2015-01-21 09:23 ./usr/share/man/
drwxr-xr-x root/root 0 2015-01-21 09:23 ./usr/share/man/man1/
-rw-r--r-- root/root 24487 2015-01-21 09:23 ./usr/share/man/man1/innobackupex.1.gz
-rw-r--r-- root/root 811 2015-01-21 09:23 ./usr/share/man/man1/xbcrypt.1.gz
-rw-r--r-- root/root 20415 2015-01-...

Read more...

Revision history for this message
Alexey Kopytov (akopytov) wrote : Posted in a previous version of this proposal

- the year in the copyright notice should be 2015, not 2013 (I mentioned it in the comments for the previous MP)

- storage/innobase/xtrabackup/doc/build/ should be removed from .bzrignore (since we no longer create that diretory) and replaced with storage/innobase/xtrabackup/doc/source/build/

- I don't think using relative path in CMakeLists.txt is a good idea. One may want to do out-of-source builds, for example.

- I have configured the source tree as follows:

cmake -DWITH_HTML_DOCS=on -DWITH_LATEX_DOCS=on -DWITH_PDF_DOCS=on -DWITH_MAN_PAGES=on .

Then 'make' failed for me like this:

[ 0%] Generating build/latex/PerconaXtraBackup-2.2.pdf
make[3]: *** No rule to make target `all-pdf'. Stop.
make[2]: *** [storage/innobase/xtrabackup/doc/source/build/latex/PerconaXtraBackup-2.2.pdf] Error 2
make[1]: *** [storage/innobase/xtrabackup/doc/source/CMakeFiles/latexpdf.dir/all] Error 2
make: *** [all] Error 2

What am I missing?

review: Needs Fixing
Revision history for this message
Tomislav Plavcic (tplavcic) wrote : Posted in a previous version of this proposal

Fixed:
- year in copyright
- doc/build in .bzrignore
- added relative paths in CMakeLists.txt

I have tried to do out-of-source builds and in-source builds and it worked for me - also tried to do build with all options like you did and it worked (probably didn't work before because of relative path or something).

There is some bug in sphinx regarding the html_theme_path option which has been resolved just recently and because of this I have left that the percona-theme is downloaded in source dir and removed after build - that only makes difference if you do out-of-source build of html docs.
I have left the comment in CMakeLists for this, and the bug is this one:
https://github.com/sphinx-doc/sphinx/issues/925

Test builds:
http://jenkins.percona.com/view/Percona-RELEASES/job/percona-xtrabackup-2.2-RELEASE/48/
http://jenkins.percona.com/view/Percona-RELEASES/job/percona-xtrabackup-2.3-RELEASE/7/

Revision history for this message
Alexey Kopytov (akopytov) wrote :

I still can reproduce it as follows:

$ bzr branch lp:~tplavcic/percona-xtrabackup/bug1156209-2.2
$ cd bug1156209-2.2
$ cmake -DWITH_HTML_DOCS=on -DWITH_LATEX_DOCS=on -DWITH_PDF_DOCS=on -DWITH_MAN_PAGES=on .
$ make -j3

If I do "cd storage/innobase/xtrabackup/doc/source; make -j3" after the above fails, everything builds successfully.

review: Needs Fixing
Revision history for this message
Tomislav Plavcic (tplavcic) wrote :

Yep, you're right.
Seems the problem was in badly defined outputs and dependencies for latexpdf target since it depends on the output of latex target - it needs Makefile which is produced there and tex file also - when parallel building was done it only looked for existance of doc/source/build/latex directory but final and needed outputs maybe were not created yet - at least that is my current understanding.

So I managed to reproduce your error and with this new commit I cannot reproduce it so please check.

Here's jenkins jobs with some testing:
TEST:
pdf job
http://jenkins.percona.com/view/PXB%202.2/job/percona-xtrabackup-2.2-documentation-pdf-new/5/
html job:
http://jenkins.percona.com/view/PXB%202.2/job/percona-xtrabackup-2.2-documentation-new/4/
release packages job:
http://jenkins.percona.com/view/Percona-RELEASES/job/percona-xtrabackup-2.2-RELEASE/50/

Revision history for this message
Alexey Kopytov (akopytov) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file '.bzrignore'
--- .bzrignore 2014-09-15 08:52:36 +0000
+++ .bzrignore 2015-02-06 14:10:42 +0000
@@ -3149,5 +3149,5 @@
3149./storage/innobase/xtrabackup/src/CMakeCache.txt3149./storage/innobase/xtrabackup/src/CMakeCache.txt
3150./storage/innobase/xtrabackup/src/xtrabackup_version.h3150./storage/innobase/xtrabackup/src/xtrabackup_version.h
3151./storage/innobase/xtrabackup/CMakeCache.txt3151./storage/innobase/xtrabackup/CMakeCache.txt
3152./storage/innobase/xtrabackup/doc/build/3152./storage/innobase/xtrabackup/doc/source/build/
3153./storage/innobase/xtrabackup/doc/source/percona-theme/3153./storage/innobase/xtrabackup/doc/source/percona-theme/
31543154
=== modified file 'cmake/build_configurations/xtrabackup_release.cmake'
--- cmake/build_configurations/xtrabackup_release.cmake 2014-09-14 04:53:30 +0000
+++ cmake/build_configurations/xtrabackup_release.cmake 2015-02-06 14:10:42 +0000
@@ -52,6 +52,8 @@
5252
53 # Enable fast mutexes on Linux53 # Enable fast mutexes on Linux
54 OPTION(WITH_FAST_MUTEXES "" ON)54 OPTION(WITH_FAST_MUTEXES "" ON)
55 # Enable building man pages on Linux by default
56 OPTION(WITH_MAN_PAGES "" ON)
55 ENDIF()57 ENDIF()
5658
57ENDIF()59ENDIF()
5860
=== modified file 'storage/innobase/xtrabackup/.bzrignore'
--- storage/innobase/xtrabackup/.bzrignore 2014-03-04 07:58:39 +0000
+++ storage/innobase/xtrabackup/.bzrignore 2015-02-06 14:10:42 +0000
@@ -8,4 +8,4 @@
8percona-theme*8percona-theme*
9doc/source/percona-theme9doc/source/percona-theme
10doc/source/percona-theme/10doc/source/percona-theme/
11doc/build11doc/source/build
1212
=== modified file 'storage/innobase/xtrabackup/CMakeLists.txt'
--- storage/innobase/xtrabackup/CMakeLists.txt 2014-05-19 12:26:12 +0000
+++ storage/innobase/xtrabackup/CMakeLists.txt 2015-02-06 14:10:42 +0000
@@ -25,3 +25,4 @@
2525
26ADD_SUBDIRECTORY(src)26ADD_SUBDIRECTORY(src)
27ADD_SUBDIRECTORY(test)27ADD_SUBDIRECTORY(test)
28ADD_SUBDIRECTORY(doc/source)
2829
=== removed file 'storage/innobase/xtrabackup/doc/Makefile'
--- storage/innobase/xtrabackup/doc/Makefile 2014-03-26 07:39:36 +0000
+++ storage/innobase/xtrabackup/doc/Makefile 1970-01-01 00:00:00 +0000
@@ -1,143 +0,0 @@
1# Makefile for Sphinx documentation
2#
3
4# You can set these variables from the command line.
5SPHINXOPTS =
6SPHINXBUILD = sphinx-build
7PAPER =
8BUILDDIR = build
9
10# Internal variables.
11PAPEROPT_a4 = -D latex_paper_size=a4
12PAPEROPT_letter = -D latex_paper_size=letter
13ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
14
15.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest
16
17help:
18 @echo "Please use \`make <target>' where <target> is one of"
19 @echo " html to make standalone HTML files"
20 @echo " dirhtml to make HTML files named index.html in directories"
21 @echo " singlehtml to make a single large HTML file"
22 @echo " pickle to make pickle files"
23 @echo " json to make JSON files"
24 @echo " htmlhelp to make HTML files and a HTML help project"
25 @echo " qthelp to make HTML files and a qthelp project"
26 @echo " devhelp to make HTML files and a Devhelp project"
27 @echo " epub to make an epub"
28 @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
29 @echo " latexpdf to make LaTeX files and run them through pdflatex"
30 @echo " text to make text files"
31 @echo " man to make manual pages"
32 @echo " changes to make an overview of all changed/added/deprecated items"
33 @echo " linkcheck to check all external links for integrity"
34 @echo " doctest to run all doctests embedded in the documentation (if enabled)"
35
36clean:
37 -rm -rf $(BUILDDIR)/*
38
39html:
40 @echo "Downloading percona-theme ..."
41 @wget -O percona-theme.tar.gz http://percona.com/docs/theme/percona-xtrabackup/2.2
42 @echo "Extracting theme."
43 @tar -zxf percona-theme.tar.gz
44 @rm -rf source/percona-theme
45 @mv percona-theme source/percona-theme
46 @rm percona-theme.tar.gz
47 @echo "Building html doc"
48 $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
49 @echo
50 @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
51
52offhtml:
53 $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
54 @echo
55 @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
56
57dirhtml:
58 $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
59 @echo
60 @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
61
62singlehtml:
63 $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
64 @echo
65 @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
66
67pickle:
68 $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
69 @echo
70 @echo "Build finished; now you can process the pickle files."
71
72json:
73 $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
74 @echo
75 @echo "Build finished; now you can process the JSON files."
76
77htmlhelp:
78 $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
79 @echo
80 @echo "Build finished; now you can run HTML Help Workshop with the" \
81 ".hhp project file in $(BUILDDIR)/htmlhelp."
82
83qthelp:
84 $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
85 @echo
86 @echo "Build finished; now you can run "qcollectiongenerator" with the" \
87 ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
88 @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/PerconaXtraBackup.qhcp"
89 @echo "To view the help file:"
90 @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/PerconaXtraBackup.qhc"
91
92devhelp:
93 $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
94 @echo
95 @echo "Build finished."
96 @echo "To view the help file:"
97 @echo "# mkdir -p $$HOME/.local/share/devhelp/PerconaXtraBackup"
98 @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/PerconaXtraBackup"
99 @echo "# devhelp"
100
101epub:
102 $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
103 @echo
104 @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
105
106latex:
107 $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
108 @echo
109 @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
110 @echo "Run \`make' in that directory to run these through (pdf)latex" \
111 "(use \`make latexpdf' here to do that automatically)."
112
113latexpdf:
114 $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
115 @echo "Running LaTeX files through pdflatex..."
116 make -C $(BUILDDIR)/latex all-pdf
117 @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
118
119text:
120 $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
121 @echo
122 @echo "Build finished. The text files are in $(BUILDDIR)/text."
123
124man:
125 $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
126 @echo
127 @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
128
129changes:
130 $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
131 @echo
132 @echo "The overview file is in $(BUILDDIR)/changes."
133
134linkcheck:
135 $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
136 @echo
137 @echo "Link check complete; look for any errors in the above output " \
138 "or in $(BUILDDIR)/linkcheck/output.txt."
139
140doctest:
141 $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
142 @echo "Testing of doctests in the sources finished, look at the " \
143 "results in $(BUILDDIR)/doctest/output.txt."
1440
=== removed file 'storage/innobase/xtrabackup/doc/make.bat'
--- storage/innobase/xtrabackup/doc/make.bat 2011-07-07 05:32:50 +0000
+++ storage/innobase/xtrabackup/doc/make.bat 1970-01-01 00:00:00 +0000
@@ -1,170 +0,0 @@
1@ECHO OFF
2
3REM Command file for Sphinx documentation
4
5if "%SPHINXBUILD%" == "" (
6 set SPHINXBUILD=sphinx-build
7)
8set BUILDDIR=build
9set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% source
10if NOT "%PAPER%" == "" (
11 set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS%
12)
13
14if "%1" == "" goto help
15
16if "%1" == "help" (
17 :help
18 echo.Please use `make ^<target^>` where ^<target^> is one of
19 echo. html to make standalone HTML files
20 echo. dirhtml to make HTML files named index.html in directories
21 echo. singlehtml to make a single large HTML file
22 echo. pickle to make pickle files
23 echo. json to make JSON files
24 echo. htmlhelp to make HTML files and a HTML help project
25 echo. qthelp to make HTML files and a qthelp project
26 echo. devhelp to make HTML files and a Devhelp project
27 echo. epub to make an epub
28 echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter
29 echo. text to make text files
30 echo. man to make manual pages
31 echo. changes to make an overview over all changed/added/deprecated items
32 echo. linkcheck to check all external links for integrity
33 echo. doctest to run all doctests embedded in the documentation if enabled
34 goto end
35)
36
37if "%1" == "clean" (
38 for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i
39 del /q /s %BUILDDIR%\*
40 goto end
41)
42
43if "%1" == "html" (
44 %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
45 if errorlevel 1 exit /b 1
46 echo.
47 echo.Build finished. The HTML pages are in %BUILDDIR%/html.
48 goto end
49)
50
51if "%1" == "dirhtml" (
52 %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
53 if errorlevel 1 exit /b 1
54 echo.
55 echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
56 goto end
57)
58
59if "%1" == "singlehtml" (
60 %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml
61 if errorlevel 1 exit /b 1
62 echo.
63 echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml.
64 goto end
65)
66
67if "%1" == "pickle" (
68 %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
69 if errorlevel 1 exit /b 1
70 echo.
71 echo.Build finished; now you can process the pickle files.
72 goto end
73)
74
75if "%1" == "json" (
76 %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
77 if errorlevel 1 exit /b 1
78 echo.
79 echo.Build finished; now you can process the JSON files.
80 goto end
81)
82
83if "%1" == "htmlhelp" (
84 %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
85 if errorlevel 1 exit /b 1
86 echo.
87 echo.Build finished; now you can run HTML Help Workshop with the ^
88.hhp project file in %BUILDDIR%/htmlhelp.
89 goto end
90)
91
92if "%1" == "qthelp" (
93 %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
94 if errorlevel 1 exit /b 1
95 echo.
96 echo.Build finished; now you can run "qcollectiongenerator" with the ^
97.qhcp project file in %BUILDDIR%/qthelp, like this:
98 echo.^> qcollectiongenerator %BUILDDIR%\qthelp\PerconaXtraBackup.qhcp
99 echo.To view the help file:
100 echo.^> assistant -collectionFile %BUILDDIR%\qthelp\PerconaXtraBackup.ghc
101 goto end
102)
103
104if "%1" == "devhelp" (
105 %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp
106 if errorlevel 1 exit /b 1
107 echo.
108 echo.Build finished.
109 goto end
110)
111
112if "%1" == "epub" (
113 %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub
114 if errorlevel 1 exit /b 1
115 echo.
116 echo.Build finished. The epub file is in %BUILDDIR%/epub.
117 goto end
118)
119
120if "%1" == "latex" (
121 %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
122 if errorlevel 1 exit /b 1
123 echo.
124 echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
125 goto end
126)
127
128if "%1" == "text" (
129 %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text
130 if errorlevel 1 exit /b 1
131 echo.
132 echo.Build finished. The text files are in %BUILDDIR%/text.
133 goto end
134)
135
136if "%1" == "man" (
137 %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man
138 if errorlevel 1 exit /b 1
139 echo.
140 echo.Build finished. The manual pages are in %BUILDDIR%/man.
141 goto end
142)
143
144if "%1" == "changes" (
145 %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
146 if errorlevel 1 exit /b 1
147 echo.
148 echo.The overview file is in %BUILDDIR%/changes.
149 goto end
150)
151
152if "%1" == "linkcheck" (
153 %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
154 if errorlevel 1 exit /b 1
155 echo.
156 echo.Link check complete; look for any errors in the above output ^
157or in %BUILDDIR%/linkcheck/output.txt.
158 goto end
159)
160
161if "%1" == "doctest" (
162 %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
163 if errorlevel 1 exit /b 1
164 echo.
165 echo.Testing of doctests in the sources finished, look at the ^
166results in %BUILDDIR%/doctest/output.txt.
167 goto end
168)
169
170:end
1710
=== added file 'storage/innobase/xtrabackup/doc/source/CMakeLists.txt'
--- storage/innobase/xtrabackup/doc/source/CMakeLists.txt 1970-01-01 00:00:00 +0000
+++ storage/innobase/xtrabackup/doc/source/CMakeLists.txt 2015-02-06 14:10:42 +0000
@@ -0,0 +1,80 @@
1# Copyright (c) 2015 Percona LLC and/or its affiliates.
2#
3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by
5# the Free Software Foundation; version 2 of the License.
6
7# This program is distributed in the hope that it will be useful,
8# but WITHOUT ANY WARRANTY; without even the implied warranty of
9# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10# GNU General Public License for more details.
11
12# You should have received a copy of the GNU General Public License
13# along with this program; if not, write to the Free Software
14# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
15
16# generate man pages
17IF(WITH_MAN_PAGES)
18 ADD_CUSTOM_COMMAND(
19 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/build/man
20 COMMAND sphinx-build -b man -d ${CMAKE_CURRENT_BINARY_DIR}/build/doctrees ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}/build/man
21 VERBATIM
22 )
23
24 ADD_CUSTOM_TARGET(man ALL
25 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/build/man
26 )
27
28 INSTALL(
29 CODE "FILE( GLOB MAN1_FILES \"${CMAKE_CURRENT_BINARY_DIR}/build/man/*.1\" )"
30 CODE "FILE( INSTALL \${MAN1_FILES} DESTINATION \"${INSTALL_MANDIR}/man1\" )"
31 )
32ENDIF()
33
34# generate html documentation
35IF(WITH_HTML_DOCS)
36 ADD_CUSTOM_COMMAND(
37 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/build/html
38 # Downloads percona-theme into source dir because of sphinx bug:
39 # https://github.com/sphinx-doc/sphinx/issues/925
40 COMMAND wget -O ${CMAKE_CURRENT_SOURCE_DIR}/percona-theme.tar.gz http://percona.com/docs/theme/percona-xtrabackup/2.2
41 COMMAND tar -zxf ${CMAKE_CURRENT_SOURCE_DIR}/percona-theme.tar.gz -C ${CMAKE_CURRENT_SOURCE_DIR}
42 COMMAND rm -f ${CMAKE_CURRENT_SOURCE_DIR}/percona-theme.tar.gz
43 COMMAND sphinx-build -b html -d ${CMAKE_CURRENT_BINARY_DIR}/build/doctrees ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}/build/html
44 COMMAND rm -rf ${CMAKE_CURRENT_SOURCE_DIR}/percona-theme
45 VERBATIM
46 )
47
48 ADD_CUSTOM_TARGET(html ALL
49 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/build/html
50 )
51ENDIF()
52
53# generate latex or pdf documentation
54IF(WITH_LATEX_DOCS OR WITH_PDF_DOCS)
55 ADD_CUSTOM_COMMAND(
56 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/build/latex/PerconaXtraBackup-2.2.tex
57 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/build/latex/Makefile
58 COMMAND sphinx-build -b latex -d ${CMAKE_CURRENT_BINARY_DIR}/build/doctrees ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}/build/latex
59 VERBATIM
60 )
61
62 ADD_CUSTOM_TARGET(latex ALL
63 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/build/latex/PerconaXtraBackup-2.2.tex
64 )
65
66 IF(WITH_PDF_DOCS)
67 ADD_CUSTOM_COMMAND(
68 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/build/latex/PerconaXtraBackup-2.2.pdf
69 COMMAND make -C ${CMAKE_CURRENT_BINARY_DIR}/build/latex all-pdf
70 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/build/latex/PerconaXtraBackup-2.2.tex
71 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/build/latex/Makefile
72 VERBATIM
73 )
74
75 ADD_CUSTOM_TARGET(latexpdf ALL
76 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/build/latex/PerconaXtraBackup-2.2.pdf
77 )
78 ENDIF()
79
80ENDIF()
081
=== modified file 'storage/innobase/xtrabackup/utils/build-binary.sh'
--- storage/innobase/xtrabackup/utils/build-binary.sh 2014-03-28 10:35:52 +0000
+++ storage/innobase/xtrabackup/utils/build-binary.sh 2015-02-06 14:10:42 +0000
@@ -110,7 +110,7 @@
110 # Install the files110 # Install the files
111 mkdir -p "$INSTALLDIR"111 mkdir -p "$INSTALLDIR"
112 cmake -DBUILD_CONFIG=xtrabackup_release -DCMAKE_INSTALL_PREFIX="$INSTALLDIR" \112 cmake -DBUILD_CONFIG=xtrabackup_release -DCMAKE_INSTALL_PREFIX="$INSTALLDIR" \
113 -DINSTALL_MYSQLTESTDIR=percona-xtrabackup-${XB_VERSION_MAJOR}.${XB_VERSION_MINOR}-test . 113 -DINSTALL_MYSQLTESTDIR=percona-xtrabackup-${XB_VERSION_MAJOR}.${XB_VERSION_MINOR}-test -DINSTALL_MANDIR=${INSTALLDIR}/man .
114 make $MAKE_JFLAG114 make $MAKE_JFLAG
115 make install115 make install
116116
117117
=== modified file 'storage/innobase/xtrabackup/utils/debian/control'
--- storage/innobase/xtrabackup/utils/debian/control 2014-08-22 10:40:29 +0000
+++ storage/innobase/xtrabackup/utils/debian/control 2015-02-06 14:10:42 +0000
@@ -14,7 +14,9 @@
14 libtool,14 libtool,
15 libz-dev,15 libz-dev,
16 libgcrypt-dev,16 libgcrypt-dev,
17 lsb-release17 lsb-release,
18 python-sphinx (>= 1.0.1),
19 python-docutils (>= 0.6)
18Standards-Version: 3.9.520Standards-Version: 3.9.5
19Homepage: http://www.percona.com/software/percona-xtrabackup21Homepage: http://www.percona.com/software/percona-xtrabackup
2022
2123
=== modified file 'storage/innobase/xtrabackup/utils/debian/percona-xtrabackup.install'
--- storage/innobase/xtrabackup/utils/debian/percona-xtrabackup.install 2014-06-10 11:24:27 +0000
+++ storage/innobase/xtrabackup/utils/debian/percona-xtrabackup.install 2015-02-06 14:10:42 +0000
@@ -1,1 +1,2 @@
1/usr/bin1/usr/bin
2/usr/share/man/man1
23
=== modified file 'storage/innobase/xtrabackup/utils/debian/rules'
--- storage/innobase/xtrabackup/utils/debian/rules 2014-07-22 12:46:09 +0000
+++ storage/innobase/xtrabackup/utils/debian/rules 2015-02-06 14:10:42 +0000
@@ -19,7 +19,7 @@
1919
20ifeq "$(DEB_DUMMY)" ""20ifeq "$(DEB_DUMMY)" ""
21 cmake -DBUILD_CONFIG=xtrabackup_release -DCMAKE_INSTALL_PREFIX=/usr \21 cmake -DBUILD_CONFIG=xtrabackup_release -DCMAKE_INSTALL_PREFIX=/usr \
22 -DINSTALL_MYSQLTESTDIR=/usr/share/percona-xtrabackup-test .22 -DINSTALL_MYSQLTESTDIR=/usr/share/percona-xtrabackup-test -DINSTALL_MANDIR=/usr/share/man .
23else23else
24 # Dummy binaries that avoid compilation24 # Dummy binaries that avoid compilation
25 echo 'main() { return 300; }' | gcc -x c - -o xtrabackup25 echo 'main() { return 300; }' | gcc -x c - -o xtrabackup
2626
=== modified file 'storage/innobase/xtrabackup/utils/percona-xtrabackup.spec'
--- storage/innobase/xtrabackup/utils/percona-xtrabackup.spec 2015-01-12 09:58:23 +0000
+++ storage/innobase/xtrabackup/utils/percona-xtrabackup.spec 2015-02-06 14:10:42 +0000
@@ -17,6 +17,11 @@
17Source: percona-xtrabackup-%{version}%{xb_version_extra}.tar.gz17Source: percona-xtrabackup-%{version}%{xb_version_extra}.tar.gz
1818
19BuildRequires: cmake, libaio-devel, libgcrypt-devel, ncurses-devel, readline-devel, zlib-devel19BuildRequires: cmake, libaio-devel, libgcrypt-devel, ncurses-devel, readline-devel, zlib-devel
20%if 0%{?rhel} > 6
21BuildRequires: python-sphinx >= 1.0.1, python-docutils >= 0.6
22%else
23BuildRequires: python-sphinx10 >= 1.0.1, python-docutils >= 0.6
24%endif
20Requires: perl(DBD::mysql), rsync25Requires: perl(DBD::mysql), rsync
21BuildRoot: %{_tmppath}/%{name}-%{version}-root26BuildRoot: %{_tmppath}/%{name}-%{version}-root
2227
@@ -54,7 +59,7 @@
54export CXXFLAGS="$CXXFLAGS -DXTRABACKUP_VERSION=\\\"%{xtrabackup_version}\\\" -DXTRABACKUP_REVISION=\\\"%{xtrabackup_revision}\\\""59export CXXFLAGS="$CXXFLAGS -DXTRABACKUP_VERSION=\\\"%{xtrabackup_version}\\\" -DXTRABACKUP_REVISION=\\\"%{xtrabackup_revision}\\\""
55#60#
56cmake -DBUILD_CONFIG=xtrabackup_release -DCMAKE_INSTALL_PREFIX=%{_prefix} \61cmake -DBUILD_CONFIG=xtrabackup_release -DCMAKE_INSTALL_PREFIX=%{_prefix} \
57 -DINSTALL_MYSQLTESTDIR=%{_datadir}/percona-xtrabackup-test .62 -DINSTALL_MYSQLTESTDIR=%{_datadir}/percona-xtrabackup-test -DINSTALL_MANDIR=%{_mandir} .
58#63#
59make %{?_smp_mflags}64make %{?_smp_mflags}
60#65#
@@ -74,6 +79,7 @@
74%{_bindir}/xbstream79%{_bindir}/xbstream
75%{_bindir}/xbcrypt80%{_bindir}/xbcrypt
76%doc COPYING81%doc COPYING
82%doc %{_mandir}/man1/*.1.gz
7783
78%files -n percona-xtrabackup-test84%files -n percona-xtrabackup-test
79%defattr(-,root,root,-)85%defattr(-,root,root,-)

Subscribers

People subscribed via source and target branches