UBUNTU: [Packaging] drop useless linux-doc

Sometime between bionic and focal, linux-doc build became
broken. Meaning it has stopped producing sphinx html build, and was
only doing compressed installation of the Restructured Text
documentation. But such compressed restructured text is not readable,
navigatable or searchable by any edoc readers.

Separately, our tree doesn't actually contain any Ubuntu-delta
specific documentation, meaning the upstream linux/linux-next docs
that are published at https://kernel.org/doc/html/ are directly
applicable to the Ubuntu kernel. And provide a much nicer experience
in terms of searching, rendering, reading.

If we do have any significant Documentation delta, we are better off
linking to correct upstream documentation, and publishing delta-only
Documentation on our public instance of read-the-docs. Or point users
at our source package and/or git repo to read Documentation/ from
there.

Droping this build doesn't save any significant build-time (as it was
already practically doing nothing). But it does save a lot of
disk-space due to reduced build-dependencies on the full TeX Live
installation. In minimal noble chroot, build dependencies installation
goes down from requiring 1,269 MB to just 542 MB. Thus significantly
reducing the size of all our chroots (locally on developer machines,
during launchpad builds, during outside of launchpad builds).

Manpages (generated using asciidoc & rst2man) are preserved and are
still produced. As those are genuinely useful, and are republished to
manpages.ubuntu.com as well.

Signed-off-by: Dimitri John Ledkov <dimitri.ledkov@canonical.com>
Acked-by: Magali Lemes <magali.lemes.do.sacramento@canonical.com>
Acked-by: Emil Renner Berthing <emil.renner.berthing@canonical.com>
Acked-by: Agathe Porte <agathe.porte@canonical.com>
Signed-off-by: Dimitri John Ledkov <dimitri.ledkov@canonical.com>
This commit is contained in:
Dimitri John Ledkov
2023-12-01 13:46:48 +00:00
committed by Paolo Pisati
parent 79c1691605
commit e4ccb0c342
10 changed files with 4 additions and 88 deletions
+1 -1
View File
@@ -31,7 +31,7 @@ Depends: ${misc:Depends}, ${shlibs:Depends}, kmod, linux-base (>= 4.5ubuntu1~16.
Recommends: BOOTLOADER, initramfs-tools | linux-initramfs-tool
Breaks: flash-kernel (<< 3.90ubuntu2) [arm64 armhf], s390-tools (<< 2.3.0-0ubuntu3) [s390x]
Conflicts: linux-image=SIGN-PEER-PKG=-PKGVER-ABINUM-FLAVOUR
Suggests: fdutils, linux-doc | SRCPKGNAME-source-PKGVER, SRCPKGNAME-tools, linux-headers-PKGVER-ABINUM-FLAVOUR, linux-modules-extra-PKGVER-ABINUM-FLAVOUR
Suggests: fdutils, SRCPKGNAME-tools, linux-headers-PKGVER-ABINUM-FLAVOUR, linux-modules-extra-PKGVER-ABINUM-FLAVOUR
Description: Linux kernel image for version PKGVER on DESC
This package contains the=SIGN-ME-TXT= Linux kernel image for version PKGVER on
DESC.
-12
View File
@@ -1,12 +0,0 @@
Package: linux-doc
Build-Profiles: <!stage1>
Architecture: all
Section: doc
Priority: optional
Depends: ${misc:Depends}
Description: Linux kernel specific documentation for version PKGVER
This package provides the various documents in the PKGVER kernel
Documentation/ subdirectory. These document kernel subsystems, APIs, device
drivers, and so on. See
/usr/share/doc/SRCPKGNAME-doc/00-INDEX for a list of what is
contained in each file.
-12
View File
@@ -43,22 +43,10 @@ Build-Depends:
libstdc++-dev,
Build-Depends-Indep:
xmlto <!stage1>,
docbook-utils <!stage1>,
ghostscript <!stage1>,
fig2dev <!stage1>,
bzip2 <!stage1>,
sharutils <!stage1>,
asciidoc <!stage1>,
python3-sphinx <!stage1>,
python3-sphinx-rtd-theme <!stage1>,
fontconfig <!stage1>,
python3-docutils <!stage1>,
imagemagick <!stage1>,
graphviz <!stage1>,
dvipng <!stage1>,
fonts-noto-cjk <!stage1>,
latexmk <!stage1>,
librsvg2-bin <!stage1>,
Vcs-Git: git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/=SERIES=
XS-Testsuite: autopkgtest
#XS-Testsuite-Depends: gcc-4.7 binutils
-1
View File
@@ -12,6 +12,5 @@ do_tools = false
do_tools_common = false
do_extras_package = false
do_source_package = false
do_doc_package = false
do_flavour_header_package = false
do_common_headers_indep = false
-1
View File
@@ -14,6 +14,5 @@ do_tools = false
do_tools_common = false
do_extras_package = false
do_source_package = false
do_doc_package = false
do_flavour_header_package = false
do_common_headers_indep = false
+1 -7
View File
@@ -79,7 +79,6 @@ ifneq ($(DEB_BUILD_PROFILE),)
endif
ifneq ($(filter stage1,$(DEB_BUILD_PROFILES)),)
do_tools=false
do_doc_package=false
do_source_package=false
do_flavour_image_package=false
do_flavour_header_package=false
@@ -166,7 +165,7 @@ distclean: clean
# Builds the image, arch headers and debug packages
include $(DROOT)/rules.d/2-binary-arch.mk
# Builds the source, doc and linux-headers indep packages
# Builds the source and linux-headers indep packages
include $(DROOT)/rules.d/3-binary-indep.mk
# Various checks to be performed on builds
@@ -178,11 +177,6 @@ ifneq (,$(wildcard $(DEBIAN)/control.d/linux-libc-dev.stub))
control_files += $(DEBIAN)/control.d/linux-libc-dev.stub
endif
endif
ifeq ($(do_doc_package),true)
ifneq (,$(wildcard $(DEBIAN)/control.d/linux-doc.stub))
control_files += $(DEBIAN)/control.d/linux-doc.stub
endif
endif
# Calculate Ubuntu Compatible Signing levels
UBUNTU_COMPATIBLE_SIGNING=$(shell grep -qx ' *Subject: C = GB, ST = Isle of Man, O = Canonical Ltd., OU = Secure Boot, CN = Canonical Ltd. Secure Boot Signing (2021 v3)' debian/canonical-revoked-certs.pem && echo ubuntu/4 pro/3)
-17
View File
@@ -111,23 +111,6 @@ rust_pkg_name=$(src_pkg_name)-lib-rust-$(abi_release)
indep_hdrs_pkg_name=$(src_pkg_name)-headers-$(abi_release)
indep_lib_rust_pkg_name=$(src_pkg_name)-lib-rust-$(abi_release)
#
# The generation of content in the doc package depends on
# 'do_doc_package_content=true'. There are usually build errors during the development
# cycle, so its OK to leave 'do_doc_package_content=false' until those build
# failures get sorted out. Finally, the doc package doesn't really need to be built
# for developer testing (its kind of slow), so only do it if on a buildd.
ifneq ($(filter --,$(variants)),)
do_doc_package=true
else
do_doc_package=false
endif
do_doc_package_content=false
ifeq ($(do_full_build),false)
do_doc_package_content=false
endif
doc_pkg_name=$(src_pkg_name)-doc
#
# Similarly with the linux-source package, you need not build it as a developer. Its
# somewhat I/O intensive and utterly useless.
-3
View File
@@ -48,7 +48,6 @@ printenv:
@echo "bin_pkg_name = $(bin_pkg_name)"
@echo "hdr_pkg_name = $(hdrs_pkg_name)"
@echo "rust_pkg_name = $(rust_pkg_name)"
@echo "doc_pkg_name = $(doc_pkg_name)"
@echo "ubuntu_selftests = $(ubuntu_selftests)"
@echo "arch = $(arch)"
@echo "kmake = $(kmake)"
@@ -69,8 +68,6 @@ printenv:
@echo "do_mainline_build = $(do_mainline_build)"
@echo "do_dbgsym_package = $(do_dbgsym_package)"
@echo "do_dtbs = $(do_dtbs)"
@echo "do_doc_package = $(do_doc_package)"
@echo "do_doc_package_content = $(do_doc_package_content)"
@echo "do_source_package = $(do_source_package)"
@echo "do_source_package_content = $(do_source_package_content)"
@echo "do_extras_package = $(do_extras_package)"
-8
View File
@@ -243,14 +243,6 @@ endif
) \
)
# Install the full changelog.
ifeq ($(do_doc_package),true)
install -d $(bindoc)
cat $(DEBIAN)/changelog $(DEBIAN)/changelog.historical | \
gzip -9 >$(bindoc)/changelog.Debian.old.gz
chmod 644 $(bindoc)/changelog.Debian.old.gz
endif
ifeq ($(do_dbgsym_package),true)
# Debug image is simple
install -m644 -D $(builddir)/build-$*/vmlinux \
+2 -26
View File
@@ -4,7 +4,7 @@ build-indep:
# The binary-indep dependency chain is:
#
# install-headers <- install-doc <- install-source <- install-tools <- install-indep <- binary-indep
# install-headers <- install-source <- install-tools <- install-indep <- binary-indep
# install-headers <- binary-headers
#
indep_hdrpkg = $(indep_hdrs_pkg_name)
@@ -31,30 +31,6 @@ ifeq ($(do_flavour_header_package),true)
endif
@touch $@
docpkg = $(doc_pkg_name)
docdir = $(CURDIR)/debian/$(docpkg)/usr/share/doc/$(docpkg)
.PHONY: install-doc
install-doc: $(stampdir)/stamp-prepare-indep
@echo Debug: $@
ifeq ($(do_doc_package),true)
dh_testdir
dh_testroot
install -d $(docdir)
ifeq ($(do_doc_package_content),true)
# First the html docs. We skip these for autobuilds
install -d $(docdir)/$(doc_pkg_name)-tmp
$(kmake) O=$(docdir)/$(doc_pkg_name)-tmp htmldocs
install -d $(docdir)/html
rsync -aL $(docdir)/$(doc_pkg_name)-tmp/Documentation/output/ \
$(docdir)/html/
rm -rf $(docdir)/$(doc_pkg_name)-tmp
endif
# Copy the rest
cp -a Documentation/* $(docdir)
find $(docdir) -name .gitignore | xargs rm -f
endif
srcpkg = linux-source-$(release)
srcdir = $(CURDIR)/debian/$(srcpkg)/usr/src/$(srcpkg)
balldir = $(CURDIR)/debian/$(srcpkg)/usr/src/$(srcpkg)/$(srcpkg)
@@ -182,7 +158,7 @@ $(stampdir)/stamp-prepare-indep:
@touch $@
.PHONY: install-indep
install-indep: $(stampdir)/stamp-install-headers install-doc install-source install-tools
install-indep: $(stampdir)/stamp-install-headers install-source install-tools
@echo Debug: $@
# This is just to make it easy to call manually. Normally done in