mirror of
https://github.com/freedombox/FreedomBox.git
synced 2026-05-20 10:34:30 +00:00
doc: Install using makefile instead of setup.py
- Prevent unnecessary copying and shipping of .xml files. - Run multiple jobs concurrently to speed up the process. Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org> Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
This commit is contained in:
parent
eb91938963
commit
8734d96ce9
12
doc/Makefile
12
doc/Makefile
@ -24,12 +24,16 @@ MANUAL_URL="https://wiki.debian.org/{lang-fragment}FreedomBox/Manual?action=show
|
|||||||
MANUAL_URL_RAW="https://wiki.debian.org/{lang-fragment}FreedomBox/Manual?action=raw"
|
MANUAL_URL_RAW="https://wiki.debian.org/{lang-fragment}FreedomBox/Manual?action=raw"
|
||||||
MANUAL_PAGE_URL="https://wiki.debian.org/{lang-fragment}FreedomBox/Manual/{page}?action=show&mimetype=text%2Fdocbook"
|
MANUAL_PAGE_URL="https://wiki.debian.org/{lang-fragment}FreedomBox/Manual/{page}?action=show&mimetype=text%2Fdocbook"
|
||||||
|
|
||||||
|
DESTDIR=
|
||||||
|
INSTALL_DIR=$(DESTDIR)/usr/share/doc/freedombox
|
||||||
SCRIPTS_DIR=scripts
|
SCRIPTS_DIR=scripts
|
||||||
|
|
||||||
manual-pdfs=$(foreach lang,$(MANUAL_LANGUAGES),manual/$(lang)/freedombox-manual.pdf)
|
manual-pdfs=$(foreach lang,$(MANUAL_LANGUAGES),manual/$(lang)/freedombox-manual.pdf)
|
||||||
manual-xmls=$(patsubst %.pdf,%.xml,$(manual-pdfs))
|
manual-xmls=$(patsubst %.pdf,%.xml,$(manual-pdfs))
|
||||||
OUTPUTS=$(manual-pdfs) plinth.1 manual-pages
|
OUTPUTS=$(manual-pdfs) plinth.1 manual-pages
|
||||||
|
|
||||||
|
INSTALL_OPTS=-D --mode=644
|
||||||
|
|
||||||
# In order to debug various problems with the documents especially
|
# In order to debug various problems with the documents especially
|
||||||
# intermediate LaTeX state, run make as follows:
|
# intermediate LaTeX state, run make as follows:
|
||||||
#
|
#
|
||||||
@ -42,9 +46,15 @@ ifneq ($(DEBUG),)
|
|||||||
XMLTO_DEBUG_FLAGS=--noclean -p '--debug'
|
XMLTO_DEBUG_FLAGS=--noclean -p '--debug'
|
||||||
endif
|
endif
|
||||||
|
|
||||||
.PHONY: all
|
.PHONY: all install
|
||||||
all: $(OUTPUTS)
|
all: $(OUTPUTS)
|
||||||
|
|
||||||
|
install: all
|
||||||
|
for file in $(manual-pages-part-html) $(manual-pdfs); do \
|
||||||
|
install $(INSTALL_OPTS) -t $(INSTALL_DIR)/$$(dirname $${file}) \
|
||||||
|
$${file} ; \
|
||||||
|
done
|
||||||
|
|
||||||
# Do not edit the manual page in this directory. The manual is
|
# Do not edit the manual page in this directory. The manual is
|
||||||
# maintained as separate pages on the FreedomBox wiki and aggregated
|
# maintained as separate pages on the FreedomBox wiki and aggregated
|
||||||
# into a single page using the MoinMoin include feature. Then it is
|
# into a single page using the MoinMoin include feature. Then it is
|
||||||
|
|||||||
12
setup.py
12
setup.py
@ -44,7 +44,6 @@ DIRECTORIES_TO_CREATE = [
|
|||||||
]
|
]
|
||||||
|
|
||||||
DIRECTORIES_TO_COPY = [
|
DIRECTORIES_TO_COPY = [
|
||||||
('/usr/share/doc/freedombox', 'doc'),
|
|
||||||
('/usr/share/plinth/static', 'static'),
|
('/usr/share/plinth/static', 'static'),
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -151,9 +150,18 @@ class CustomInstall(install):
|
|||||||
class CustomInstallData(install_data):
|
class CustomInstallData(install_data):
|
||||||
"""Override install command to allow directory creation and copy"""
|
"""Override install command to allow directory creation and copy"""
|
||||||
|
|
||||||
|
def _run_doc_install(self):
|
||||||
|
"""Install documentation"""
|
||||||
|
command = ['make', '-j', '8', '-C', 'doc', 'install']
|
||||||
|
if self.root:
|
||||||
|
root = os.path.abspath(self.root)
|
||||||
|
command.append(f'DESTDIR={root}')
|
||||||
|
|
||||||
|
subprocess.check_call(command)
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
"""Execute install command"""
|
"""Execute install command"""
|
||||||
subprocess.check_call(['make', '-C', 'doc'])
|
self._run_doc_install()
|
||||||
|
|
||||||
install_data.run(self) # Old style base class
|
install_data.run(self) # Old style base class
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user